1. Откройте файл параметров MySQL командой:
nano /etc/mysql/my.cnf
2. Добавьте в конец файла три параметра:
[mysqld] skip-grant-tables skip-networking
- skip-grant-tables — параметр, который пропускает проверку прав. Это позволит подключиться к MySQL без пароля любому пользователю.
- skip-networking — параметр, который запретит удалённые подключения к серверу БД на время сброса пароля.
3. Чтобы запустить MySQL с нужными параметрами, перезапустите сервер БД командой:
systemctl restart mysql.service
4. Подключитесь к серверу баз данных при помощи команды:
mysql
5. Перезагрузите привилегии:
FLUSH PRIVILEGES;
Команда нужна для устранения «ERROR 1290 (HY000): The MySQL server is running with the —skip-grant-tables option so it cannot execute this statement»
6. Поменяйте пароль при помощи команды:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
Или (если команда выше не сработала)
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('password');
7. Удалите из файла текст, который добавили во втором шаге:
[mysqld] skip-grant-tables skip-networking
8. Перезапустите сервер БД командой:
systemctl restart mysql.service
9. Подключитесь к серверу баз данных:
mysql -u root -p
Введите пароль
10. Чтобы не забывать пароли используйте KeePass