gpt4 book ai didi

MySQL 错误 : #1045 - Access denied for user 'root' @'localhost' (using password: YES)

转载 作者:可可西里 更新时间:2023-11-01 06:59:38 24 4
gpt4 key购买 nike

我已经尝试了所有找到的修复方法,但我无法更改我的 MySQL 根密码。在 shell 中,如果我输入 mysql -u root,我会得到

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

当我进入 PHP MyAdmin 时,我得到了这个:

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

这一切都始于我被迫为 MySQL 输入新密码。我不知道如何解决这个问题,我很绝望。

谢谢。

最佳答案

通用 MYSQL 信息

首先,阅读 mysql 手册:https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html

这些步骤将向您展示如何关闭该服务并使用不需要密码的覆盖命令启动它,然后您重置密码。来自手册:

停止 MySQL 服务器,然后使用 --skip-grant-tables 选项重新启动它。这使任何人都可以在没有密码和所有权限的情况下进行连接,并禁用帐户管理语句,例如 ALTER USERSET PASSWORD。因为这是不安全的,您可能希望将 --skip-grant-tables--skip-networking 结合使用,以防止远程客户端连接。

使用mysql客户端连接到MySQL服务器;不需要密码,因为服务器是用 --skip-grant-tables 启动的:

shell> mysql

在 mysql 客户端中,告诉服务器重新加载授权表,以便帐户管理语句起作用:

mysql> FLUSH 特权;

然后更改'root'@'localhost' 帐户密码。将密码替换为您要使用的密码。要更改具有不同主机名部分的根帐户的密码,请修改使用该主机名的说明。

MySQL 5.7.6 及更高版本:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

MySQL 5.7.5 及更早版本:

mysql> 为 'root'@'localhost' 设置密码 = PASSWORD('MyNewPass');

或者直接在用户表上:

UPDATE mysql.user SET password=PASSWORD('mynewpassword') WHERE user='root';

XAMPP 特定

停止 MySQL 服务。打开命令窗口。切换到 XAMPP MySQL 目录:

> cd\xampp\mysql\bin\

在没有安全保护的情况下运行服务(注意你运行的是 mysqld,而不是 mysql):

> mysqld.exe --skip-grant-tables

MySQL 服务将在此窗口中运行,因此打开另一个命令窗口并切换到 XAMPP MySQL 目录:

> cd\xampp\mysql\bin\

运行 MySQL 客户端:

> mysql

更新密码:

mysql> UPDATE mysql.user SET password=PASSWORD('mynewpassword') WHERE user='root';

退出MySQL:

mysql>\q

使用任务管理器取消仍在运行的mysqld.exe。重启mysql服务。

关于MySQL 错误 : #1045 - Access denied for user 'root' @'localhost' (using password: YES),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41818827/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com