无法连接到MySQL:(1045)用户'root'@'localhost'拒绝访问(使用密码:YES)

时间:2017-06-21 14:02:14

标签: php mysql wordpress

我正在部署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.1更改为0.0.0.0,以便我可以通过mySQL Workbench访问它。这是成功的,因为我现在能够从外部来源进入数据库。

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

enter image description here

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

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

下面是我得到的错误的图片

enter image description here

我在SO上尝试过manny不同的场景,我很抱歉提前发布这个,但是没有提供解决方案。

有关解决此事的任何想法吗?

虽然我们在这,但

  1. (using password: YES)(using password: NO)的含义是什么?
  2. root@localhostroot@127.0.0.1
  3. 之间的区别

3 个答案:

答案 0 :(得分:1)

使用密码:YES表示您输入了mysql密码。

127.0.0.1和localhost相同

答案 1 :(得分:0)

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

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

答案 2 :(得分:0)

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

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