2010-11-23 2 views
14

У меня есть небольшая проблема с моим phpmyadmin, на самом деле я случайно удаляю несколько учетных записей пользователей. Поскольку невозможно подключиться без ошибки:Как сбросить пароль root mysql?

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

У меня есть немного поискать в сети раньше, и даже Technic:

UPDATE mysql.user SET Password = PASSWORD ('') WHERE User = 'root'; 
FLUSH PRIVILEGES; 

не работает, или я не понял как это сработало.

Я на FreeBSD 8.1, моя версия PhpMyadmin - 2.11.

Заранее благодарю вас за ответы.

ответ

16

я кратко мое решение здесь: http://snippets.dzone.com/posts/show/13267

sudo stop mysql 
sudo mysqld --skip-grant-tables --skip-networking 

mysql 
mysql> update mysql.user set password = password('your_new_password') where user = 'root'; 
mysql> flush privileges; 
mysql> exit; 
sudo mysqladmin shutdown 
sudo start mysql 
+1

, пожалуйста, не отправляйте точно такой же ответ несколько раз. Если вопрос является дубликатом, отметьте его как таковой. – Mat 2011-06-19 12:02:01

+2

отсутствует из приведенного выше фрагмента - хотя это объясняется в выездном сводке. 1) После запуска первого `sudo mysqld ...`, переключитесь в другое окно терминала. 2) Запрос на новый пароль при запуске mysqladmin shutdown: `sudo mysqladmin shutdown -u root -p` – here 2013-04-24 16:37:19

0

Чтобы восстановить пароль root, следуйте инструкциям из приведенной ниже ссылки. Вы должны делать это извне mysql.

Сброс MySql Пароль

Забыв пароль MySQL может быть настоящей головной болью для you.Here несколько простых шагов, которые вы можете следовать, чтобы восстановить пароль MySql под Windows, Stop MySql

Вы должны остановить MySql прежде чем продолжить. В среде Windows перейдите на вкладку «Диспетчер задач» и «Сервис», найдите MySQL и остановите ее. Напишите Sql, чтобы сменить пароль

Все, что вам нужно сделать, это создать текстовый файл и вставить в него следующие две строки. UPDATE mysql.user SET Password = PASSWORD ('MyNewPass') WHERE User = 'root'; ПРИВИЛЕГИИ ФЛЮЗА; Сохраните его под диском C: \ и дайте ему имя «mysql-init.txt» Время перезапуска MySQL самостоятельно.

Теперь пришло время перезапустить свой MySQl, который вы остановили раньше, но на этот раз из командной строки. C:> C: \ mysql \ bin \ mysqld-nt --init-file = C: \ mysql-init.txt Завершение!

Теперь вы можете войти в систему с помощью своего нового пароля. Когда вы закончите удаление файла, созданного на предыдущем этапе.

Также есть ссылка (http://kaziprogrammingblog.osinweb.com/article/showarticle/Resetting-MySql-Password), где я объяснил одно и то же.

Надеется, что это поможет .. :)

4

Для MySQL 5.7.16 или позже я нашел this (от mysql.com) быть рабочим раствором. Ниже приведены некоторые моменты, которые отличаются от предыдущих более ранних версий.

1) Я использовал приведенную ниже команду для запуска mysql в безопасном режиме в соответствии с некоторыми другими ссылками, которые на самом деле отлично работали для меня (mysql 5.7.16 ubuntu 16.04).

mysqld_safe --skip-grant-tables --skip-networking 

2) Нижеследующее обновление stmt НЕ работает для более поздней версии (т.е.7 и выше)

-- NOT Working for 5.7 and later 
UPDATE mysql.user SET Password = PASSWORD ('') WHERE User = 'root'; 
FLUSH PRIVILEGES; 

ВМЕСТО использовать ниже 5.7.6, а затем

UPDATE mysql.user 
    SET authentication_string = PASSWORD('MyNewPass'), password_expired = 'N' 
    WHERE User = 'root' AND Host = 'localhost'; 
FLUSH PRIVILEGES; 

или пользователя ниже для 5.7.5 или более ранних версий.

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass'); 
0

Ответ на XAMPP на Windows:

  • Edit C: \ XAMPP \ MySQL \ Bin \ my.ini и вставки пропуском грантоеды таблицы ниже [туздЫ]
  • Restart MySQL из-под контроля Панельный интерфейс
  • В окне phpMyAdmin выберите вкладку SQL с верхней панели. Это откроет вкладку SQL, где мы сможем запускать SQL-запросы. Теперь введите следующий запрос в текстовой области и нажмите кнопку Go

UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root'; FLUSH PRIVILEGES;

  • Удалите пропуск ГРАНТ-таблицу в файле my.ini интерфейс
  • Restart MySQL из панели управления

СОВЕРШЕННО!

Помните, что пароль пользователя root mysql не должен совпадать с паролем для phpmyadmin.

Смежные вопросы