В прошлом было sudo /etc/init.d/mysql reset-password
, (1) ручной перезапуск и установка пароля с помощью команды sql снова требуется? (2)
(1) http://www.ubuntugeek.com/reset-the-root-password-on-mysql.html (2) http: / /www.howtoforge.com/reset-forgotten-mysql-root-password
Существует также административный пользователь, эквивалентный root: debian-sys-maint. Вы можете использовать эту учетную запись для сброса пароля root. Вы можете найти его пароль в /etc/mysql/debian.cnf
Вы можете создать файл sql скажем /root/mysql.reset.sql
с содержанием:
UPDATE mysql.user SET Password=PASSWORD('yourpassword') WHERE User='root';
FLUSH PRIVILEGES;
И просто позвоните:
mysqld_safe --init-file=/root/mysql.reset.sql
Будет очень полезно, если вы привыкли часто забывая пароли.
sudo dpkg-reconfigure mysql-server-5.5
вы можете использовать табуляцию после mysql-server-
, если вы используете другую версию mysql.
sudo /etc/init.d/mysql stop
sudo mkdir /var/run/mysqld/
sudo chown mysql /var/run/mysqld/
sudo mysqld_safe --skip-grant-tables &
sudo mysql -u root
use mysql;
update user set authentication_string=PASSWORD("New_Passwore_Here") where User='root';
flush privileges;
exit;
sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql start
Остановите MySQL Server.
sudo /etc/init.d/mysql stop
Запустите конфигурацию mysqld.
sudo mysqld --skip-grant-tables &
Войдите в MySQL как пользователь root.
mysql -u root mysql
Замените YOURNEWPASSWORD вашим новым паролем!
UPDATE user SET Password=PASSWORD('YOURNEWPASSWORD') WHERE User='root'; FLUSH PRIVILEGES; exit;
Единственный, кто помог мне, - это ответ паутины. Я имел дело с тем, что могло быть поврежденным пользователем root, и ни один из стандартных методов не решил проблему невозможности войти в систему как root.
Используя пользователя debian-sys-maint, я смог наконец войти в MySQL с повышенными привилегиями, и даже после этого сброс пароля root не работал.
Тем не менее, я смог воссоздать пользователя root:
DROP USER 'root'@'localhost';
CREATE USER 'root'@'localhost' IDENTIFIED BY '<newpassword>';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
... и, наконец, все снова было в порядке с миром!
Я надеюсь, что это помогает отчаявшейся душе там ...