解决mysql远程连接失败的问题
问题描述
在我远程连接我的服务器数据库的时候,navicat给我提示了这么一个错误:
1 ERROR 1130: Host 'xxx' is not allowed to connect to thisMySQL server.
思考解决
- 首先
鉴于前两天我刚帮别人解决了这个一模一样的问题,都是错误代码1130,当时解决的方向是:(不过本方法对我而言并没有生效)
- 先考虑端口是否开放:在客户端telnet xxx 3306,发现无法telnet进去,说明:①端口可能没开;②被防火墙把端口给限制了;
- 再考虑端口是否开启问题:远程连接到服务器端,netstat -ltp .发现端口也开着呢呀,服务正在运行。随后重启了一下,在客户端试了还是不行;
- 那么就试试防火墙吧:关闭防火墙,systemctl stop firewalld
- 最后端口就可以使用了。
- 这里要说一下:
1 # ubuntu服务器 2 命令:service ufw start/stop/status 3 4 # centos服务器 5 命令1:service iptables start/stop/status # centos6.x 6 命令2:systemctl start/stop/status firewalld # centos7.x,centos7不用iptables了,改用firewall了
- 其次
是否可能是mysql的配置中bind-address的问题呢,于是我去找到mysqld.cnf文件,查看[mysqld]下的这个配置,结果也没问题,因为其默认配置的就是0.0.0.0。不过这个问题有时候也是要考虑到的。
学三境:
一境:昨夜西风凋碧树,独上高楼,望尽天涯路;
二境:衣带渐宽终不悔,为伊消得人憔悴;
三境:众里寻‘它’千百度,蓦然回首,那斯却在,灯火阑珊处。