Сброс пароля пользователя root в mysql.
Наша память, к сожалению, нас иногда подводит. И мы никак не можем вспомнить железно, как нам кажется, отпечатанный в памяти пароль. Вы можете сказать, что нужно иметь записную книжку а лучше две, и конечно будете правы. Но… Тем не менее иногда все-таки возникает необходимость восстановления забытого, либо утраченного пароля. Сегодня я опишу простой метод восстановления пароля суперпользователя root для базы данных mysql.
Для этого необходимо выполнить всего несколько шагов.
1. Останавливаем mysql.
service mysqld stop
2. Запускаем mysql следующей командой:
/usr/bin/mysqld_safe --skip-grant-tables --user=root &
3. Запускаем клиента mysql
mysql -u root
4. Выполняем sql запрос
UPDATE mysql.user SET Password=PASSWORD(’newpwd’) WHERE User=’root’;
где newpwd - новый пароль.
5. Применяем изменения
FLUSH PRIVILEGES;
6. Выходим из mysql клиента выполнив в нем команду exit
7. Перегружаем mysql сервер.
service mysqld restart
Ну и все на этом. Пароль суперпользователя root для базы данных mysql изменен. Добавлю, что конечно же этот метод описан в официальном руководстве по mysql, но может кому пригодится. ![]()
Чё то у меня на 3м шаге обламывает.
↓ Quote | Posted August 16, 2007, 6:23 amвыполняю mysql -u root
пишет
[3+] stopped ./mysqld_safe –skip-grant-tables –user=root &
Возможно у тебя mysqld_safe находится по другому пути. Не в /usr/bin/. В любом случае не запускается mysql сервер. Попробуй командой whereis mysqld_safe узнай путь к твоему файлу mysqld_safe.
↓ Quote | Posted August 16, 2007, 8:49 amВ статье ошибка, написано “/usr/bin/mysqld_safe –skip-grant-tables –user=root &”, а нужно
↓ Quote | Posted November 29, 2007, 9:20 am“/usr/bin/mysqld_safe –-skip-grant-tables –-user=root &” иначе будет выдавать ошибку и работать не будет.
Поправил. Спасибо. Написал я правильно, но отображалось неправильно. Wordpress два минуса при отображении в один минус трансформирует.
↓ Quote | Posted November 29, 2007, 10:26 amСпасибо за статью
только что пригадилась на практике
вобще за сайтик спасибо нередко выручал 
↓ Quote | Posted December 11, 2007, 3:36 pmОтличная инфа.
↓ Quote | Posted January 21, 2008, 5:46 pmВот для Дебиан кому надо какие команды - посмотреть можно здесь www.opennet.ru/tips/info/1177.shtml
В строке:
↓ Quote | Posted September 14, 2008, 5:24 pmUPDATE mysql.user SET Password=PASSWORD(’newpwd’) WHERE User=’root’;
не коректные кавычки, правильный вариант:
UPDATE mysql.user SET Password=PASSWORD(’newpwd’) WHERE User=’root’;
Движок приобразовует кавычки =/
↓ Quote | Posted September 14, 2008, 5:27 pmВобщем коректная кавычка ставитца нажатием буквы “э” на английской раскладке.
Небольшая поправочка. При попытке сделать аналогичное в Fedora 8, при установке нового пароля сервер ругался “ERROR 1046 (3D000): No database selected”. После перезапуска консоли с указанием базы: mysql -u root mysql все прошло удачно.
↓ Quote | Posted November 23, 2008, 1:30 amштуки на которые я напоролся -
↓ Quote | Posted December 16, 2008, 5:43 pm1) амперсанд в конце “/usr/bin/mysqld_safe –-skip-grant-tables &” не нужен.
2) эта команда подвешивает консоль в которой была запущена, остальные комнады даём через новую консоль.
3) UPDATE mysql.user SET Password=PASSWORD(’newpwd’) WHERE User=’root’; - именно это и значит! я почти 20 минут вводил варианты, которые можно описать как UPDATE mysql.user SET Password=’newpwd’ WHERE User=’root’;