В случае, если необходимо изменить пароль root-пользователя базы данных, в том числе при его утере, воспользуйтесь следующей инструкцией.
/etc/init.d/mysql stop
mysqld.cnf
, чтобы запустить службу без проверки прав доступа. Для этого:3.1. Откройте файл в редакторе:
nano /etc/mysql/mysql.conf.d/mysqld.cnf
3.2. В секцию [mysqld]
добавьте следующую строку:
skip-grant-tables
Должно получиться примерно так:
3.3. Сохраните изменения (в nano
это выполняется комбинацией Ctrl O -> Enter -> Ctrl X, либо Ctrl X -> Y -> Enter).
service mysql restart
mysqld.cnf
:nano /etc/mysql/mysql.conf.d/mysqld.cnf
И удалите добавленную строку. Сохраните изменения.
mysql
use mysql;
update user set authentication_string=password('ваш_новый_пароль') where user='root';
flush privileges;
/etc/init.d/mysql start
mysql -u root -p
После чего введите ваш новый пароль.
Если требуется изменить существующий root-пароль для MySQL либо установить его в случае, когда он не был задан в принципе (это актуально, например, при автоматической установке LAMP при создании сервера — root-пароль MySQL при этом не задается), это можно сделать следующим образом:
Если пароль root не задан, используйте команду:
mysql
Если пароль существует, используйте команду:
mysql -u root -p
После чего введите текущий пароль.
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('пароль');
\q
.mysql -u root -p
После чего введите ваш новый пароль.