使用 PHP cPanel 配置进行远程 MySQL 访问


Remote MySQL access with PHP cPanel configuration

这真的是一件简单的事情。但我无法解决它,所以我希望有人能尽快给我答案。

我有两个独立的服务器。MySQL数据库托管在服务器#1上,该服务器上的PHP文件通过查询运行网站。现在,我希望通过远程访问相同的数据库并运行数据库查询,在网站#2上拥有相同的内容。

我已经授予了对服务器 #1 上的数据库的远程 IP 访问权限。我已经将相同的PHP文件(在服务器#1上进行查询)复制到服务器#2,并将"localhost"更改为该服务器的IP地址。用户名和密码保持不变。

当我运行该PHP文件时,我收到一条消息"找不到数据库"。

这是访问服务器 #1 上的数据库的 PHP 代码,与数据库所在的服务器相同:

$user_name = "database_xxx";
$password = "xxx";
$database = "database_name";
$server = "localhost";

这是第二种情况,服务器 #2 上的 PHP 文件应该访问同一个数据库:

$user_name = "database_xxx";
$password = "xxx";
$database = "database_name";
$server = "xx.xxx.xxx.xxx"; //IP address of server #1

您说您已经检查了防火墙并确保远程主机正在使用数据库连接到计算机,因此这些都已关闭。 之后最容易检查的是权限。 请记住,权限授予user@host,您可能只授予对user@localhost的访问权限。 之后,是时候看看您的数据库配置了。

如果您使用的是 Cpanel,您真正应该做的是转到数据库下的远程 MySql...在"输入"字段中,它要求允许的连接。只需输入服务器#2的域名,将您在问题中给出的相同配置放在问题中,但这一次,不是将服务器#1的IP地址放在服务器#2 Php连接代码中,而是输入服务器#1的域名。例如

$user_name = "database_xxx";
$password = "xxx";
$database = "database_name";
$server = "server#1.com"; //Domain name address of server #1