Mysql, сброс root пароля
28 01 2009Итак, c IP которые хостер забыл привязать к серваку разобрались. Пиздюлей хостеру за то что он роуты забыл прописать тоже дали. Пытаемся коннектиться к мускулю без пароля - фиг. Пароль хостер поставил.. но забыл. ПРедлагает попробовать с паролем ssh root - ясное дело не получается. Что делать?
- service mysqld stop, останавливаем сервис
- Запускаем в сейф режиме без проверки грантов. Будьте внимательны - около каждой опции два тире:
/usr/bin/mysqld_safe –user=root –skip-grant-tables & - Логинимся рутом без пароля: mysql -uroot
- Переходим в системную базу данных, use mysql;
- Обновляем пароль, обычный апдейт: UPDATE user SET Password=PASSWORD(’ВАШ НОВЫЙ ПАРОЛЬ’) WHERE User=’root’;
- Сбрасываем привилегии. Видимо они где - то ещё хранятся, и при логине от туда берутся. FLUSH PRIVILEGES;
- Выходим из мускуля, exit
- Перегружаем сервис, service mysqld restart
Да… могут быть проблемы если у вас не может создаться временный файл, pid или socket файл. Это в принципе не относится к паролю, но советую при любых проблемах проверять прежде всего это. Папка tmp должна быть доступна для записи и чтения всем, папки куда пишутся pid и сокет файлы читайте в конфигах софтов, они должны принадлежать соотв. юзеру (как правило одноимённый с сервисом) или быть доступны для всех.

пункт 5 - получаем что мы паролю прописали новый хеш, надо password=” писать, чтобы можно было зайти без пароля и поменять его
[непонятный сайт: criter ru]
Иногда лучше жевать, чем говорить.
[...] пароль рутовый восстановили, переходим к созданию [...]
Насколько хватает моих познаний, в *nix подобных системах непривилегированные пользователи не смогут остановить mysqld.
У тебя действительно есть познания, вот только откуда звон - ты не ведаешь. Во всех системах остановить процесс может либо его создатель либо юзер с большими правами. Если ты запустил мускуль от рута, то естественно кроме рута его никто не сможет остановить. Привилегированных и непривилегированных пользователей в *nix системах не существует, все юзеры имеют какие - то привилегии, в зависимости от группы в которую входят.
Но всё это не важно. Если это наш дедикейтед сервер - значит у нас есть рут. Если это не наш сервер и не мы его админим - значит нехуй трогать мускуль там.
В примерах тире указано одно и в п.3 пробела после -u не хватает
а так спасибо.
[его там не должно быть, averus org]
Спасибо огромное! Был в отъезде и немог вспомнить пасс рута в мускуле. xDDD
[сайт dsstudionlain ru, сайт о том что сделан сайт, несоответствие правилам для комментариев]