воскресенье, 13 октября 2013 г.

Восстановление пароля root в mysql

После проверки диска на ошибки перестала запускаться программа traffpro. При запуске сообщала что не могла подключиться к базе mysql. Принудительную проверку диска делал так - с помощью touch создал пустой файл в корне диска /forcefsck, который служит сигналом (флагом) для fsck, что нужно проверить диски после перезагрузки.

Из документации по mysql:

Распространенной проблемой при работе с базами данных mysql является потеря пароля рута по разного рода причинам. В этой статье будет описано как без потери данных можно быстро восстановить пароль root в mysql на примере систем Debian/Ubuntu.

Обычно при попытке запуска mysql такая проблема сопровождается сообщением:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

или

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

Для смены пароля суперпользователя в mysql предварительно войдите в сеанс root в консоли:

su

Затем остановите запущенный сервис mysql:

service mysql stop

После команды:

mysqld_safe --skip-grant-tables &

вы сможете войти в mysql без пароля:

mysql -uroot mysql

В сеансе управления mysql введите следующие строки:

UPDATE user SET password=PASSWORD("your_password") WHERE user="root";
FLUSH PRIVILEGES;
EXIT

Где вместо your_password — введите ваш пароль.

После этого остается только запустить mysql:

/etc/init.d/mysql restart

Комментариев нет:

Отправить комментарий