MySQL: восстанавливаем забытый пароль или устанавливаем новый

Это можно сделать, не теряя данные. Но вообще, в особенности рекомендую создавать отдельного пользователя и отдельную БД для других нужд, root не использовать для сайта вообще, только для управления базами данных и привелегиями.

Про Linux я буду описывать для Red Hat подобных систем (Fedora, Mandriva, ASP, Alt и т.д.), т.к. это мне ближе, но и для других систем сильно не отличается, опишу один пример для каждой системы, а дальше сами.

Linux:
Всё необходимо выполнять от супер-пользователя root (su, sudo, sudo su)

1. Для начала останавливаем работу mysqld:
в Debian-оподобных системах или freebsd
/etc/init.d/mysqld stop
В Rad hat подобных
service mysqld stop

В Windows Пуск, Выполнить, net stop «MySQL Server» (или как она там точно называется?)

2. Выполняем
mysqld_safe --skip-grant-tables
Начинает работать демон MySQL-Safe в безопасном режиме
3. Заходим в консоль mysql
mysql -u root
В консоли выполняем
mysql> UPDATE `user` SET `password`=PASSWORD('root_password') WHERE `user`='root'
Это всё.

mysql> exit

Далее возвращаем к работе прежний сервер: останавливаем или работу mysqld-safe, и запускаем в обычную работу mysqld аналогично 1-му пунту, только вместо stop пишем start.

Leave a Reply

Your email address will not be published. Required fields are marked *