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命令尝试连接一下。