真的很简单。但我无法解决,所以我希望有人会尽快给我答案。
我有两台独立的服务器。 MySQL数据库托管在服务器#1上,该服务器上的PHP文件通过查询运行网站。现在,我想通过远程访问同一个数据库并运行数据库查询,在网站#2上拥有相同的内容。
我已经对服务器#1上的数据库进行了远程IP访问。我已将相同的PHP文件(在服务器#1上进行查询)复制到服务器#2,并将“localhost”更改为该服务器的IP地址。用户名和密码保持不变。
当我运行该PHP文件时,我收到一条消息“找不到数据库”。
这是访问服务器#1上数据库的PHP代码,服务器#1是数据库所在的服务器:
$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
答案 0 :(得分:2)
你说你已经检查过防火墙&确保远程主机与数据库连接到机器,这样就不存在了。之后检查最简单的是权限。请记住,权限授予user@host
&您可能只能访问user@localhost
。之后,是take a look at your database configuration.
答案 1 :(得分:0)
如果你正在使用Cpanel,你应该做的是去数据库下的远程MySql ...在输入字段中,它要求允许连接。只需输入Server#2的域名,输入您在问题中给出的相同配置,但这一次,不是将Server#1的IP地址放在Server#2 Php连接代码中,而是输入Server#1的域名。 E.g。
$user_name = "database_xxx";
$password = "xxx";
$database = "database_name";
$server = "server#1.com"; //Domain name address of server #1