好的,我通过 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,以重新加载并覆盖缓存