Смена пароля, если текущий пароль утерян
1. Подключитесь к серверу по SSH.
2. Остановите службу MySQL:
3. Отредактируйте файл mysqld.cnf, чтобы запустить службу без проверки прав доступа. Для этого:
3.1. Откройте файл в редакторе:
nano /etc/mysql/mysql.conf.d/mysqld.cnf |
3.2. В секцию [mysqld] добавьте следующую строку:
Должно получиться примерно так:
3.3. Сохраните изменения (в nano это выполняется комбинацией Ctrl O -> Enter -> Ctrl X, либо Ctrl X -> Y -> Enter).
4. Перезапустите mysql:
5. Снова откройте файл mysqld.cnf:
nano /etc/mysql/mysql.conf.d/mysqld.cnf |
И
удалите добавленную строку. Сохраните изменения.
6. Подключитесь к MySQL как root без пароля:
7. Выберите активную БД:
8. Обновите пароль:
update user set authentication_string=password('ваш_новый_пароль') where user='root'; |
9. Примените изменения:
10. Выйдите из mysql командой
\q
11. Перезапустите службу в обычном режиме:
12. Теперь проверьте, что пароль успешно изменен, подключившись под root с новым паролем. Для этого выполните:
После чего введите ваш новый пароль.
Смена пароля, если текущий пароль известен или не был установлен ранее
Если требуется изменить существующий root-пароль для MySQL либо установить его в случае, когда он не был задан в принципе (это актуально, например, при автоматической установке LAMP при создании сервера - root-пароль MySQL при этом не задается), это можно сделать следующим образом:
1. Подключитесь к серверу по SSH.
2. Перейдите к управлению MySQL:
Если пароль root не задан, используйте команду:
Если пароль существует, используйте команду:
После чего введите текущий пароль.
3. Выполните запрос ниже, заменив "пароль" на нужное вам значение:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('пароль'); |
4. Выйдите из консоли MySQL командой
\q
5. Проверьте изменения, подключившись с новым паролем. Выполните команду:
После чего введите ваш новый пароль.