Никто не застрахован от потери root пароля MySQL. Поэтому в этой статье рассмотрим, как сбросить root пароль и восстановить доступ к MySQL. Чтобы спросить пароль понадобится доступ к серверу и учетка с sudo привилегиями.
Для начала останавливаем MySQL сервер:
sudo systemctl stop mysql
Затем переходим к редактированию конфигурации systemd для MySQL, чтобы запустить MySQL сервер без таблиц привилегий.
sudo systemctl edit mysql
После чего вам нужно прописать:
[Service]
ExecStart=
ExecStart=/usr/sbin/mysqld --skip-grant-tables --skip-networking
Эти команды сбросят дефолтное значения и запустят новую команду для отключения таблиц привилегий, а также сетевое соединение.
После сохранения конфигурации, необходимо ее перезапустить:
sudo systemctl daemon-reload
Затем включить MySQL сервер:
sudo systemctl start mysql
Теперь вы можете зайти в MySQL под учеткой root без пароля:
sudo mysql -u root
Сбросьте привилегии:
FLUSH PRIVILEGES;
Затем установите новый root пароль:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'тут пароль';
Сбросьте конфигурацию, которую меняли ранее:
sudo systemctl revert mysql
Перезапустите ее:
sudo systemctl daemon-reload
Перезапустите MySQL сервер:
sudo systemctl restart mysql
Теперь для входа под root можно использовать новый пароль:
mysql -u root -p
0 комментариев