无法连接到 MySQL:(1045)用户“root”@“localhost”的访问被拒绝(使用密码:是)[重复]

Posted

技术标签:

【中文标题】无法连接到 MySQL:(1045)用户“root”@“localhost”的访问被拒绝(使用密码:是)[重复]【英文标题】:Failed to connect to MySQL: (1045) Access denied for user 'root'@'localhost' (using password: YES) [duplicate] 【发布时间】:2017-11-24 11:46:07 【问题描述】:

我正在部署一个 Wordpress 环境,似乎发生了一个奇怪的情况。

我做了一些调整并像这样设置了一个新的 root 密码

mysql -u root –p
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyNewPass';
service mysql restart
ufw allow 3306

然后我将bind 的设置从/etc/mysql/mysql.conf.d 更改为127.0.0.10.0.0.0,以便我可以通过mySQL Workbench 访问它。这很成功,因为我现在能够从外部来源进入数据库。

更改密码后,我更改了wp-config.php 文件并设置了新凭据。

但是,现在,每当我登录时,我都会在 WordPress 中遇到错误,我看到以下错误,尽管网站运行没有任何问题并且文章出现了。

 Failed to connect to MySQL: (1045) Access denied for user 'root'@'localhost' (using password: YES)

下面是我遇到的错误的图像

我在 SO 上尝试了许多不同的场景,我很抱歉再次发布此内容,但没有提供的解决方案有效。

有解决这个问题的想法吗?

当我们在做的时候,

    (using password: YES)(using password: NO) 是什么意思? root@localhostroot@127.0.0.1有什么区别

【问题讨论】:

您必须手动将所有权限授予 root 帐户,这似乎很奇怪。 WP知道你改密码了吗?您设置了一个新的密码,但您从未提及您更改了 wp_config 文件。 @amflare 是的,我更新了我的问题 【参考方案1】:

using password: YES表示你输入了mysql密码。

127.0.0.1 和 localhost 是一样的

【讨论】:

【参考方案2】:

看起来你忘记在 wp-config.php 中更改数据库连接设置

/** MySql database password */
define('DB_PASSWORD', 'MyNewPass');

【讨论】:

我做到了,检查我的更新答案。【参考方案3】:

使用密码:是 表示您已使用密码连接到您的服务器。

localhost 是一个主机名,表示这台计算机,而 127.0.0.1 是它的 IP 地址,因此它们是相同的。

毕竟在这里你已经为root用户设置了密码,并赋予它从任何主机连接到服务器的权限。

我认为你应该在 wp-config.php 中设置新密码

编辑:wp-config.php 中检查您的凭据:

/** The name of the database for WordPress */
define('DB_NAME', 'your_db');

/** MySQL database username */
define('DB_USER', 'root');

/** MySQL database password */
define('DB_PASSWORD', 'this-is-your-password');

/** MySQL hostname */
define('DB_HOST', 'localhost'); // Exactly localhost

【讨论】:

@tony9099 MySQL 是否与您的网站在同一台机器上?是否可以通过 mysql -uroot -p 连接到它? 是的,它们在同一台机器上,是的,我可以通过 mysql -u root -p 连接 它已经存在但仍然无法工作:/ 我刚刚重新测试,我可以使用 mysql -u root -p 登录,我确实在 putty 上得到了mysql> 提示,我在配置文件中输入了确切的密码,但我得到了那个错误.很奇怪。 @tony9099 你能同时连接mysql -u root -p -h localhostmysql -u root -p -h 127.0.0.1

以上是关于无法连接到 MySQL:(1045)用户“root”@“localhost”的访问被拒绝(使用密码:是)[重复]的主要内容,如果未能解决你的问题,请参考以下文章

#1045 无法登录 MySQL 服务器

无法在 127.0.0.1:3306 连接到 mysql,用户 'root'@'localhost' 的用户 root 访问被拒绝(使用密码:YES)

当我将 root 密码设置为“无密码”时,我无法连接到数据库

错误 1045 (28000):用户访问被拒绝 [重复]

无法连接到数据库(HY000/1045),尝试使用 php mysqli_connection 连接到数据库 [重复]

连接网站显示数据库错误:无法连接到数据库:无法连接到MySQL?