重置MySQL密码

好的,所以我通过phpMyAdmin更改了密码,完全locking了我对root用户的访问。 有关于这个在线的各种文章,但没有一个似乎工作。 以下是我迄今为止所尝试的:

停止mysql服务:sudo /etc/init.d/mysql停止

从这个选项开始:sudo mysqld –skip-grant-tables&

启动mysql提示符:mysql

在mysql提示下input以下内容:

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

这一切工作正常,但我不能连接使用新的密码,我不知道到底是什么问题。

任何帮助深表感谢。

汤姆

可能是因为你在MYSQL上的帐户可能不止一个。

例如root,root @ localhost和[email protected]

所以首先检查服务器上的用户帐户:

 select User from mysql.user where mysql.user like '%root%'; 

然后相应地更新密码。

或者,您也可以使用mysqladmin来更改密码,我发现这是一个更好的解决scheme。

您应该使用这里详细说明的SET PASSWORD语法。

 SET PASSWORD FOR 'user'@'host' = PASSWORD('newpassword'); 

如果您仍然尝试连接phpMyAdmin,请删除浏览器caching和cookies.OR,使用正确的凭证login失败后,请按Ctrl + F5,以便重新加载并覆盖caching