Если вы потеряли root-пароль MySQL, это не повод для паники. Пароль можно сбросить, даже если вы не можете войти в систему.
Расскажу, как это сделать с помощью параметра --init-file.
1️⃣ Создайте файл инициализации.
Откройте текстовый файл и вставьте команду для изменения пароля. Пример для Linux:
vim /home/user/init-file.txt
Содержимое файла:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
Замените new_password на новый пароль. Убедитесь, что файл доступен для чтения пользователем MySQL.
2️⃣ Остановите MySQL.
Выполните одну из команд в зависимости от системы:
# systemd
systemctl stop mysqld.service
# init
/etc/init.d/mysqld stop
3️⃣ Запустите MySQL с файлом инициализации.
Используйте следующую команду:
mysqld --user=mysql --init-file=/home/user/init-file.txt --console
MySQL выполнит указанные команды и обновит пароль root.
4️⃣ Удалите файл и перезапустите сервер.
После выполнения обязательно удалите файл и запустите MySQL как обычно:
# systemd
systemctl restart mysqld.service
# init
/etc/init.d/mysqld restart
5️⃣ Проверьте доступ.
Войдите в MySQL с новым паролем:
mysql -u root -p
Этот метод безопасен и прост в реализации, сохраните в заметки.
#mysql
🧑💻 NetworkAdmin | ⚙️ EasyTools