Ошибка: Access denied for user 'root'@'localhost' (using password: YES)

После обновления сервера выползло, почему не понятно, наверное повредились таблицы с привелегиями. хотя другие учетки кроме рута не исчезли.
Проблема связана с несоответсвием пароля с учетной записью. Решение для Debian 6 такое:

1. Залогиньтесь как пользователь root на машину с запущенным MySQL сервером.
2. Остановите MySQL server используя следующую команду.
#/etc/init.d/mysql stop
3. Теперь нам нужно запустить MySQL без пароля
# mysqld_safe --skip-grant-tables &
4. Подключитесь к MySQL серверу используя mysql клиент
# mysql -u root
5. Вы увидите консоль mysql
mysql>
6. Устанавливаем новый пароль пользвателя root:
mysql> use mysql;
mysql> update user set password=PASSWORD(”newpassword”) where user=’root’;
mysql> flush privileges;
mysql> quit




Замените newpassword на новый требуемый вам пароль root. Команда flush privileges необходима для того чтобы изменения вступили в силу немедленно.
Опять останавливаем MySQL
# /etc/init.d/mysql stop
Протестируем новый пароль. Для начала запустим MySQL в нормальном режиме
# /etc/init.d/mysql start
# mysql -u root -p
Ввводим пароль root и проверяем

Комментарии

Популярные сообщения из этого блога

Две сетевые карты Windows 7. Настройка маршрутизации

Cisco Packet Tracer + Русификатор

Восстановление конфигурации Cisco с tftp сервера