我在连接到由Amazon Web Services托管的远程MySQL服务器时遇到问题。我可以从几乎任何其他计算机连接到这个MySQL服务器,但由于某种原因,我无法将它放入我在GoDaddy上托管的PHP中。
这是PHP代码:
$cxn = mysql_connect($host,$user,$passwd,$dbname)
or die("Query died: Cannot connect.");
我已将MySQL服务器的主机名添加到GoDaddy的CPANEL>中。远程MySQL访问主机。我知道变量是正确的,因为我已经在另一台服务器上对此进行了测试,一切正常。
我现在已经和GoDaddy通电了两次了,他们所说的只是尝试一个论坛(除了将MySQL主机添加到远程访问主机页面)。
我已检查AWS MySQL的安全组,并确保它对GoDaddy的托管IP地址开放......
我只是不确定还能做什么!当GoDaddy的服务器在另一台服务器上正常工作时,为什么不能正常工作呢?
MySQL v5.6 - >在AWS上 PHP v5.4 - >在GoDaddy
答案 0 :(得分:1)
根据问题和评论中的信息,很明显GoDaddy的网络运营团队不允许在端口3306上传出TCP连接请求(这是MySQL的默认端口)。
这意味着您无法从在GoDaddy服务器上运行的程序到位于其他位置的MySQL服务器发起连接。如果这样做,它将停止,直到TCP连接超时结束。
你能做些什么呢?
尝试让您的MySQL服务器监听其他端口,可能是8000.8080,或其他常用的"替代品#34; http端口。那些可能不会被阻止。然后使用
的mysql_connect(" $主机:$端口",$用户,$ passwd中,$ DBNAME)
连接。
您需要查找如何让AWS驻留的MySQL服务器在非标准端口上侦听。