Mysql无法远程连接

检查用户访问权限

我们默认新建用户的时候所指定的访问权限都是localhost,localhost代表只有本机可以连接,可以使用下列命令查看一下

mysql> select user,host from mysql.user;

所以假如我们想通过从其它主机使用root用户远程连接到mysql服务器的话,我们需要将root的访问权限从localhost修改成%,%代表任何主机

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;

mysql> use mysql;
mysql> update user set host ='%' where user='root';

不过为了安全,%也可以换成你需要外部连接的IP

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'IP地址' IDENTIFIED BY '密码' WITH GRANT OPTION;

修改完成后需要进行提交

mysql> FLUSH PRIVILEGES

若上述方法无法解决问题

1.查看/etc/my.cnf中是否有配置skip-networking项,有则注销掉。

2.查看防火墙配置是否有问题,可以在本机使用telnet命令尝试连接一下。

posted @ 2022-02-28 14:51  RFAA  阅读(175)  评论(0编辑  收藏  举报