1

我知道有人问过这个问题,但他们都说了我尝试过但失败的事情。

基本上使用这个站点:http ://www.yougetsignal.com/tools/open-ports/ 我可以看到我的 3306 端口已关闭,并且尝试让客户端远程连接不起作用。我已将/etc/mysql/my.cnf文件更改为既已注释掉bind-address,也已将其更改为0.0.0.0但均无效。

我已经尝试过iptables -A INPUT -i eth0 -p tcp -m tcp --dport 3306 -j ACCEPT,但它似乎没有做任何事情。

我的 iptables 都显示 ACCEPT

-P INPUT ACCEPT -P FORWARD ACCEPT -P OUTPUT ACCEPT -A INPUT -i eth0 -p tcp -m tcp --dport 3306 -j ACCEPT

ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:3306

有没有人知道为什么这个端口仍然被阻塞?

谢谢

附加信息[编辑]

当我尝试使用时:mysqli_connect('XX.XX.XX.XXX', "DBUSer", "DBPassword", "DBName", 3306);它给了我错误PHP Warning: mysqli_connect(): (HY000/2003): Can't connect to MySQL server on 'XX.XX.XX.XX (60)

我还输入了我的服务器: ufw status; Status: inactive

4

2 回答 2

0

谢谢大家。

事实证明,设置服务器的团队最终需要进行更改。他们没有具体说,但它打开了端口。(我想这是防火墙设置)

我还必须向所有主机授予权限:

GRANT ALL ON *.* to DBUsername@'%' IDENTIFIED BY 'DBPassword';

我一直看到 DBUsername@'xx.xx.xx.xxx' 并且不知道我必须 '%' 它才能为所有 IP 工作。

谢谢

于 2017-08-24T00:53:38.863 回答
0

我遇到了同样的问题,我尝试在端口 3306 的出站规则(在防火墙高级设置中)中添加一个新规则。或者您可以配置 Mysql 设置,在您设置时,勾选该框以允许从另一台机器远程。

于 2018-11-22T04:38:26.337 回答