我正在尝试远程连接到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
答案 0 :(得分:6)
首先尝试检查TCP连接问题,使用netcat和telnet:在mysql服务器上,停止mysqld(释放端口3306)并在侦听模式下运行netcat:
nc -l -p 3306
现在,netcat正在侦听端口3306(就像mysqld在运行时所做的那样)并将显示该端口上发生的事情(传入连接,线路中的内容......)。
在远程计算机(mysql客户端)上,尝试连接到mysql服务器主机:
telnet 129.169.66.149 3306
或:
nc 129.169.66.149 3306
如果这不起作用,这不是mysql服务器配置问题,而是网络问题,您必须检查路由器防火墙规则。
否则,您的问题来自mysql服务器设置。检查你的mysql配置文件bind-address
,并删除它们以使mysqld接受来自任何IP地址的客户端。
答案 1 :(得分:0)
129.169.66.149服务器上的3306端口已关闭,您必须打开此端口 使用此参考作为指南http://www.cyberciti.biz/faq/linux-unix-open-ports/