远程访问 MySQL 连接错误

Remote Access MySQL connection error

我正在尝试远程连接到 MySQL 服务器。我遵循了 (1) 的建议,并在我将从中远程访问的 IP 地址上设置了一个用户。

user$ mysql -u TestUser -p -h 129.169.66.149
Enter password:
ERROR 2003 (HY000): Can't connect to MySQL server on '129.169.66.149' (60)

我检查过,端口(默认3306)是正确的,ip地址也是正确的。 MySQL 也是 运行。

从远程计算机,我可以成功 ping 服务器

ping 129.169.66.149
64 bytes from 129.169.66.149: icmp_seq=48 ttl=63 time=1.010 ms

但是当我使用 Telnet 时:

TELNET 129.169.66.149
Trying 129.169.66.149...
telnet: connect to address 129.169.66.149: Operation timed out
telnet: Unable to connect to remote host

有人可以指教吗?这是防火墙问题吗?

(1) - https://superuser.com/questions/826896/access-wordpress-mysql-database-remotely

129.169.66.149服务器上的3306端口已关闭,您需要打开此端口 使用此参考作为指南 http://www.cyberciti.biz/faq/linux-unix-open-ports/

首先尝试使用 netcat 和 telnet 检查 TCP 连接问题:在 mysql 服务器上,停止 mysqld(以释放端口 3306)和 运行 netcat 监听模式:

nc -l -p 3306

现在,netcat 正在侦听端口 3306(就像 mysqld 在 运行ning 时所做的那样)并将显示该端口上发生的情况(传入连接、线路中的内容...) .

在您的远程计算机(mysql 客户端)上,尝试连接到 mysql 服务器主机:

telnet 129.169.66.149 3306

或:

nc 129.169.66.149 3306

如果这不起作用,这不是 mysql 服务器配置问题而是网络问题,您必须检查您的路由器防火墙规则。

否则,您的问题来自 mysql 服务器设置。检查 mysql 配置文件中的 bind-address,并删除它们以使 mysqld 接受来自任何 IP 地址的客户端。