Access denied for user ‘root‘ @‘123.233.244.218‘(using password:YES)的解决方法

Posted 穆雄雄

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Access denied for user ‘root‘ @‘123.233.244.218‘(using password:YES)的解决方法相关的知识,希望对你有一定的参考价值。

大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。

前言

在我们新买了个服务器之后,数据库我觉得是比不可少的吧,任何一个项目,只要是动态的,都需要数据做数据的服务于支撑,目前我们项目中用的最多的数据库就是mysql,安装的话一般也都从宝塔上直接安装,方便又省事儿,不用为了环境在浪费时间。

但是,宝塔上安装了数据库之后会有这样的一个问题(不知道其他方式安装会不会遇到),因为我每次都使用同一种方式安装,但是出了这个问题之后,每次都不断的去网上查…这次记录一下吧。

问题描述

当我们在新服务器上新搞了个数据库后,会报一个这样的错:
Access denied for user ‘root’ @‘123.233.244.218’(using password:YES)的解决方法


这个问题,在网上五花八门,可所谓多如牛毛,但是这么多的解决方案,要想找到一个适合自己的,少之甚少。

解决方法

我的解决方法如下:

  1. 首先我们从服务器终端进入数据库,命令如下:
mysql -u root - p
  1. 输入root的密码:


3. 选择数据库:

use mysql;
  1. 接下来我们写一条sql语句查询一下,看看root账户是不是只允许localhost连接:
select user,host from user;


大家可以看得出来,我的root账户只允许本地连接,这个时候我们远程连接就会报错:拒绝访问,然后只需要将localhost修改成%即可,sql语句如下:

update user set host = '%' where user = 'root' and host = 'localhost';

接着我们在查询一遍。

select user,host from user;


已经个更改完成。

  1. 最后需要刷新一下权限表:
flush privileges;
flush hosts;

最后,就可以了,如果你的还不行,建议重启一下mysql服务,再试试,应该没啥问题。

以上是关于Access denied for user ‘root‘ @‘123.233.244.218‘(using password:YES)的解决方法的主要内容,如果未能解决你的问题,请参考以下文章

ERROR 1142 (42000): GRANT command denied to user ** 或 ERROR 1045 (28000): Access denied for user 

Access denied for user XX

ERROR 1045 (28000): Access denied for user ‘root‘@

MySql access denied for user错误

ERROR 1045 (28000): Access denied for user ‘roort‘

Mysql Access denied for user 'root'