重置 MySQL 密码

重置 MySQL 密码

好的,我通过 phpMyAdmin 更改了密码,它完全锁定了我对 root mysql 用户的访问权限。网上有很多关于此问题的文章,但似乎都没有用。以下是我到目前为止尝试过的方法:

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

从此选项开始:sudo mysqld --skip-grant-tables &

启动mysql提示符:mysql

在 mysql 提示符下输入以下内容:

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

一切正常,但我无法使用新密码连接,我不确定问题到底是什么。

任何帮助深表感谢。

汤姆

答案1

可能是因为您的MYSQL上的账户可能不止一个。

例如 root、root@localhost 和[电子邮件保护]

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

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

然后相应地更新密码。

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

答案2

您应该使用 SET PASSWORD 语法详细这里

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

答案3

如果您仍在尝试连接 phpMyAdmin,请删除浏览器缓存和 cookies。或者,在使用正确的凭据登录失败后,按 ctrl+f5,以重新加载并覆盖缓存

相关内容