Как поменять забытый пароль root в MySQL/MariaDB?

Иногда бывает, что вы забыли пароль root для MySQL или вам достался в администрирование сервер, владелец которого не помнит какой был пароль. Вам необходимо вернуть себе контроль над MySQL, т.е. либо сбросить либо поменять пароль root для MySQL. Ниже два способа как это можно сделать.
Обратите внимание, вам понадобятся права суперпользователя root в операционной системе (не путайте с root в MySQL), так ак все нижеперечисленные команды должны запускаться с правами суперпользователя.
1. С помощью init-файла
Создаём файл, например /root/mysql-init с содержимым:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('новый_пароль');
где вместо "новый_пароль" вы указываете желаемый пароль. Затем останавливаете MySQL/MariaDB сервер и запускаете команду:
mysqld_safe --init-file=/root/mysql-init &
Затем останавливаете MySQL/MariaDB, удаляете файл и запускаете MySQL/MariaDB обычным образом.
2. С помощью ключа --skip-grant-tables
Останавливаете MySQL/MariaDB. Запускаете команду
mysqld_safe --skip-grant-tables &
Далее команду:
mysql -u root -e "UPDATE mysql.user SET Password=PASSWORD('новый_пароль') WHERE User='root';"
И затем останавливаете MySQL/MariaDB и запускаете уже обычным образом.
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
- 1516 просмотров