php - 使用 PHP 连接到远程 MySQL 服务器

标签 php mysql mysql-connect remote-server mysql-error-2002

我正在尝试使用以下代码从我的本地计算机虚拟主机连接到远程 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/

相关文章:

php - MySQLi real_connect 失败

javascript - 如何将php变量分配给JS变量

MySQL:语句是否缓存在数据库中?

php - “无法为命名路由生成 URL

php - 如何获取表中的所有唯一名称并回显它们?

MySQL:将出现的行数与结果一起连接

php - 未定义函数 mysql_connect()

php - 如何在函数内的数组中使用变量?

php - 用 PHP 绘制 Google 图表

php - pthreads 在 React/Ratchet 中无法按预期工作