【发布时间】:2012-10-09 05:52:06
【问题描述】:
可能重复:
how to understand “can't connect” mysql error messages?
我几乎尝试按照我能找到的关于这个主题的所有教程进行操作,但无济于事。我正在尝试通过 PHP 连接到远程 MySQL 数据库,但似乎连接超时或什么的。这是我的 PHP 代码:
$link = mysql_connect('remote-server-ip:3306', $username, $password);
if($link){
echo "Connected.";
}else{
echo "Not connected: ".mysql_error();
}
当我浏览到该页面时,它会加载大约 30 秒,然后才会显示:
Warning: mysql_connect(): Can't connect to MySQL server on 'remote-server-ip' (4) in /var/www/vhosts/*****/httpdocs/*****/*****.php on line 6
这是我在远程服务器上为尝试允许此连接所做的操作:
- 添加了 IPtables 规则以允许来自我的服务器的连接。
- 设置 my.cnf 以监听所有 TCP 请求
- 向我的数据库添加了可以从我的服务器 IP 连接的用户
似乎仍然没有任何效果。我真的可以在这里使用一些帮助。
【问题讨论】:
-
你记得刷新权限吗? (微不足道,但仍然)
-
@DC_:坚持使用被弃用的功能是什么?
-
@EliasVanOotegem 这只是一个测试文件——我通常使用 PDO。
-
首先,在您的本地 php.ini 中将
default_socket_timeout设置为 6 秒。30 秒等待时间太长了。 :) -
@DC_ 这没有任何意义。为什么不坚持您通常使用的方法,而不是使用已弃用的功能来测试?
标签: php mysql firewall remote-access