将php sql连接故障缩小到服务器设置?
我正在尝试从服务器B连接到服务器a上的MYSQL数据库。我们正在合作的托管公司同时拥有服务器a和服务器B。这是我第一次尝试外部数据库连接 我编写了以下PHP代码,试图从服务器B连接到服务器A上的MYSQL数据库。该代码与我在谷歌搜索到的关于连接外部MYSQL数据库的大多数其他代码类似将php sql连接故障缩小到服务器设置?,php,sql,sqlconnection,Php,Sql,Sqlconnection,我正在尝试从服务器B连接到服务器a上的MYSQL数据库。我们正在合作的托管公司同时拥有服务器a和服务器B。这是我第一次尝试外部数据库连接 我编写了以下PHP代码,试图从服务器B连接到服务器A上的MYSQL数据库。该代码与我在谷歌搜索到的关于连接外部MYSQL数据库的大多数其他代码类似 $IPAddress_O_fServer_A = 'XXX.XX.XX.XXX'; $Server_A_DB_Pass = 'P-WORD'; $Server_A_DB_User = 'U-NAME'; $con
$IPAddress_O_fServer_A = 'XXX.XX.XX.XXX';
$Server_A_DB_Pass = 'P-WORD';
$Server_A_DB_User = 'U-NAME';
$con = mysql_connect($IPAddress_Of_Server_A, $Server_A_DB_User, $Server_A_DB_Pass);
现在,当此代码在服务器B上执行时,出现以下错误:
Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on 'XXX.XX.XX.XXX' (4) in /var/www/web12/web/dev/front-end.php on line 10
Could not connect: Can't connect to MySQL server on XXX.XX.XX.XXX' (4)
…其中第10行是mysql\u connect()调用
有人看到这个代码有什么问题吗?
如果连接不工作,可以安全地说,服务器外部连接权限或某些其他设置一定存在问题吗
谢谢 首先,我要查看并确保您的系统配置为允许远程访问
其次,用户名“U-name”实际上是“U”-NAME@localhost“并将具有相应的权限设置。例如,考虑下面的Grand语句。< /P>
GRANT SELECT *
ON foo.bar
TO 'U-NAME'@'localhost'
用户名“U-name”有权从数据库foo、表栏中选择条目,但它是专用的localhost访问。为了允许远程访问,您必须授予与以下类似的权限
GRANT SELECT *
ON foo.bar
TO 'U-NAME'@'xx.xx.xx.xx'
(1) (2)在localhost上进行测试时,用户U-NAME是否可以连接到数据库?可能是一个不接受localhost之外连接的安全服务器……是的,在mysql_connect()中具有localhost地址的服务器a上正在积极使用用户名/密码