Полностью заблокирован из MySQL! - PullRequest
10 голосов
/ 17 июня 2011

Мне как-то удалось полностью заблокировать себя из MySQL на WAMP.Кажется, что все привилегии запрещены для всех пользователей.Единственный способ попасть в MySQL - через командную строку, но без ввода пользователя.Оттуда я буквально ничего не могу сделать ... все привилегии отрицаются.Я попытался обновить пароль root безрезультатно.

Я также попытался полностью удалить WAMP и MySQL.После удаления MySQL я удалил каталоги данных внутри них, чтобы избавиться от всей информации там.После переустановки WAMP проблема сохраняется.

Попытки доступа к PHPMyAdmin приводят к:

#1045 - Access denied for user 'root'@'localhost' (using password: NO) 

Может кто-нибудь помочь ??

РЕДАКТИРОВАТЬ Почему люди голосуют за закрытие этого сообщения ...?

РЕДАКТИРОВАТЬ2 Появляется дикая вторичная проблема !Что ты хочешь делать?Ответить или уйти?

Ответы [ 4 ]

11 голосов
/ 17 июня 2011

Вам потребуется сбросить пароль root с помощью mysqladmin из командной строки.

mysqladmin password your-new-root-password

Может потребоваться явно указать пользователя root:

mysqladmin -u root password your-new-root-password

Может также помочь сбросить привилегии с mysqladmin:

mysqladmin flush-privileges

Тогда вам может потребоваться предоставить все привилегии обратно пользователю root. Не уверен, если это необходимо.

GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY 'your-new-password';
1 голос
/ 17 июня 2011

Если полная очистка и переустановка приводит к той же самой проблеме, вероятно, существует проблема в вашей среде, которая является проблемой.

Вы не упоминаете, какую версию Windows вы используете, но я предполагаю, что это Vista или выше с этими проблемами с привилегиями ненормального пользователя. Я хотел бы убедиться, что учетная запись пользователя службы mysql имеет доступ на чтение / запись к каталогам и файлам данных mysql.

ЗАПРОШЕННАЯ РАЗРАБОТКА:

Чтобы проверить учетную запись, под которой работает служба, откройте services.msc, прокрутите вниз соответствующую службу и посмотрите на столбец «Вход в систему как» (или дважды щелкните службу и затем перейдите на вкладку «Вход в систему»). ).

Чтобы проверить права доступа к файлам и папкам данных MySQL, щелкните правой кнопкой мыши родительскую папку и выберите «Свойства», затем вкладку «Безопасность» (я не уверен, что у вас будет вкладка Безопасность с Home, хотя - вы бы не в XP).

Если учетная запись, под которой работает служба, не имеет полного контроля над папкой и файлами в ней, вам необходимо изменить разрешения, чтобы добавить этого пользователя (или изменить пользователя, под которым работает служба).

Если все, что не указывает вам правильное направление, вам следует поискать подробные инструкции по установке WAMP на Win7 Home и убедиться, что вы следуете им в письме, поскольку разрешения и т. Д. Скорее PITA на Win7. Может даже случиться, что Win7 Home не позволит вам запустить сервер веб-сервера / sql в качестве службы, так как домашние версии Windows часто преднамеренно искажаются (например, вы не можете запустить IIS на WinXP Home, и разрешения безопасности папки скрыты).

1 голос
/ 17 июня 2011

http://dev.mysql.com/doc/refman/5.0/en/resetting-permissions.html

Убедитесь, что процесс mysqld завершен, прежде чем пытаться выполнить сброс. Попробуйте войти в клиент mysql, как вы сказали, что вы можете в своем вопросе.

0 голосов
/ 09 июня 2016

Мне удалось восстановить доступ, просто запустив mysql_secure_installation из командной строки. Он побежал меня через несколько вопросов и позволил мне (пере) установить root pw.

...