我正在尝试使用以下代码从我的本地计算机虚拟主机连接到远程 MySQL 服务器:
$conn = mysql_connect("$dbhost", "$dbuser", "$dbpass") or die(mysql_error());
mysql_select_db($dbname, $conn) or die(mysql_error());
我的问题是我无法在本地连接,收到错误消息:
Can't connect to MySQL server on 'xxx.xxx.xxx.xxx' (10060)
当我将相同的 PHP 文件上传到服务器时,情况就不是这样了。我可以毫无问题地查询数据库。
我也无法通过命令行连接,但我可以访问 cPanel,这排除了我的 IP 被意外禁止的可能性。
我的本地服务器运行的是 PHP 5.2.9,远程服务器运行的是 5.2.12
最佳答案
- 必须设置服务器的防火墙以启用端口 3306 上的传入连接
- 您必须在 MySQL 中有一个允许从
%
(任何主机)连接的用户(详情请参阅 manual)
当前的问题是第一个问题,但在您解决它之后,您很可能会遇到第二个问题。
关于php - 使用 PHP 连接到远程 MySQL 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1935314/