前言
在我们新买了个服务器之后,数据库我觉得是比不可少的吧,任何一个项目,只要是动态的,都需要数据做数据的服务于支撑,目前我们项目中用的最多的数据库就是mysql
,安装的话一般也都从宝塔上直接安装,方便又省事儿,不用为了环境在浪费时间。
但是,宝塔上安装了数据库之后会有这样的一个问题(不知道其他方式安装会不会遇到),因为我每次都使用同一种方式安装,但是出了这个问题之后,每次都不断的去网上查.....这次记录一下吧。
问题描述
当我们在新服务器上新搞了个数据库后,会报一个这样的错:
Access denied for user 'root' @'123.233.244.218'(using password:YES)的解决方法
这个问题,在网上五花八门,可所谓多如牛毛,但是这么多的解决方案,要想找到一个适合自己的,少之甚少。
解决方法
我的解决方法如下:
- 首先我们从服务器终端进入数据库,命令如下:
mysql -u root - p
- 输入
root
的密码:
- 选择数据库:
use mysql;
- 接下来我们写一条
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;
已经个更改完成。
- 最后需要刷新一下权限表:
flush privileges;
flush hosts;
最后,就可以了,如果你的还不行,建议重启一下mysql
服务,再试试,应该没啥问题。