MySQL. Восстановление пароля при физическом доступе к серверу


Несколько раз уже приходилось восстанавливать доступ к MySQL, сегодня решил записать это. В принципе на странице http://dev.mysql.com/doc/refman/5.5/en/resetting-permissions.htmlвсе расписано, но хотелось это все таки у себя записать.

И да, будет происходить не восстановление, а смена пароля. Но доступ вы все таки восстановите!

Вариант первый

Запустим mysqldбез применения привилегий и исправим пароль для пользователя root.

Останавливаем сервер MySQL и пробуем запустить mysqld без применения привилегий: 
$ sudo /etc/init.d/mysql stop 
$ mysqld --skip-grant-tables --skip-networking 

После чего обновляем пароль для пользователя root: 
$ mysql -uroot 
mysql> UPDATE `mysql`.`user` SET `password`=PASSWORD('YOUR_NEW_PASSWORD') 
WHERE `user`="root"; 
mysql> FLUSH PRIVILEGES; 

Запускаем MySQL-сервер: 
$ sudo /etc/init.d/mysql start 

Второй вариант

Если не получается по вервому варианту получить доступ к mysql, то мне помогает вариант с загрузкой init-скрипта, в котором будет происходит смена пароля для пользователя root.

Останавливаем MySQL-сервер и создаем файл "~/init.sql":

$ sudo /etc/init.d/mysql stop $ nano ~/init.sql 

Со следующим содержимым:

UPDATE `mysql`.`user` SET `password`=PASSWORD('YOUR_NEW_PASSWORD') 
WHERE `user`='root'; 
FLUSH PRIVILEGES; 

После чего запускаем mysqld_safe, прерываем его и запускаем MySQL-сервер:

$ mysqld_safe --init-file=~/init.sql 
$ sudo /etc/init.d/mysql start 

Эти два варианта всегда работают, удачи!

Реклама
Поделиться
Качественные премиум темы и шаблоны для Вашего сайта:

Смотреть полный каталог качественных тем и шаблонов

Здесь Вы можете выбрать из более чем 46 000 готовых дизайнов. Шаблоны сайтов + установка + хостинг + персонализация + поисковая оптимизация + копирайтинг — все эти услуги вы всегда можете получить от профессионалов мирового уровня!

Добавить коментарий

18 + четыре =