我正在尝试在本地应用程序中连接远程mysql数据库。但它没有与给定的用户名和密码连接。虽然我将GRANT ALL
提供给该用户。经过长时间的研究,我开始了解防火墙。我假设防火墙的以下规则是不连接的罪魁祸首:
REJECT tcp -- anywhere anywhere tcp dpt:mysql reject-with icmp-port-unreachable
如果我是对的,请告诉我。请建议我解决这个问题。
答案 0 :(得分:0)
您可以通过运行以下命令(以root用户身份)在防火墙中挖出一个洞到您指定的IP地址
iptables -I INPUT -p tcp --dport 3306 --src 103.19.252/24 -j ACCEPT
-I INPUT
表示我们正在查看传入的流量
--dport 3306
表示前往端口3306
(mysql)的任何流量
--src 103.19.252/24
将打开与103.19.252.xx
子网的任何流量的连接
-j ACCEPT
意味着让它通过
您还需要确保允许您的MySQL用户从该IP连接