请注意。操作系统是ubuntu 14。*
我对我在MYSQL服务器上的连接感到不满。我尝试通过我的公共IP连接到我的MYSQL服务器内部。但我无法连接。虽然我可以在连接到localhost时以及在外部连接时进行连接。
# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
#bind-address = 127.0.0.1
我评论了bind-adress,这应该将addres绑定到0.0.0.0。我还尝试将bind-adres设置为0.0.0.0。这也行不通。
我的主机文件设置如下:
127.0.0.1 MY-IP
当我在端口80上telnet到我的公共IP时,没有问题。
telnet MY-IP 80
我明白了:
Trying MY-IP...
Connected to MY-IP.
Escape character is '^]'.
但是当我在端口3306上尝试这个时,它会继续:
Trying MY-IP...
我还为我的MYSQL用户授予了所有正确的权限。我可以连接外部和内部。但是我不可能将我的公共IP内部连接起来。
我也尝试使用netstat找到解决方案。
netstat -tln
给mes
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
编辑:刚刚禁用了UFW。它仍然无法运作。
ufw status
Status: inactive
EDIT2:mysql是否可能忽略了/ etc / hosts文件?
有人可以帮助我进一步解决问题所在的一些好主意。
答案 0 :(得分:0)
您应该将绑定地址更改为0.0.0.0然后重新启动mysqld。还要确保没有启用防火墙:
iptables -n -L
如果有规则,阻止端口3306,删除它们,或者只是使用
禁用firwalliptables -F
还使用netstat检查服务器是否正在侦听外部IP:
netstat -tupan |grep :3306