多个DB查询无法在远程服务器上运行

时间:2013-05-09 13:57:15

标签: mysql

我的代码会将记录从一个数据库复制到另一个数据库。

以下代码适用于我的本地测试服务器(WAMP),但在实时服务器(1& 1)上运行时,会出现错误“错误:用户'dbo123456'''''''''''''''''''''''''''''''''''''''''''''''''''''''' 1)

$con1 = mysql_connect( HOST1 , USER1 , PASS1 , "db1" );
if (!$con1)
{
  echo "Failed to connect to db1 " . mysqli_connect_error();
}

$con2 = mysql_connect( HOST2 , USER2 , PASS2 , "db2" );
if (!$con2)
{
  echo "Failed to connect to db2 " . mysqli_connect_error();
}

$sql = "
INSERT INTO db2.names ( title , surname )
SELECT title , surname
FROM db1.names
WHERE nameID = 1
";
$result = mysql_query( $sql );
if (!$result) {
  die('Error: ' . mysql_error());
}

我之前从未使用过muliple数据库,也无法解决可能出错的问题。这只是一个1和1的事情,还是我做错了?

1 个答案:

答案 0 :(得分:1)

在MySQL中,您不仅可以为用户帐户(即用户名)分配权限,还可以为其连接的IP分配权限。因此,用户可以拥有SELECT权限,但不能使用127.0.0.1以外的计算机

有关授予远程访问权限的示例,请参阅此S / O帖子:How to grant remote access permissions to mysql server for user?

也就是说,请注意:您希望非常注意允许远程访问,并将其锁定到一组选定的列入白名单的IP。我不知道你正在构建什么类型的应用程序或解决方案,但允许通过互联网远程访问MySQL通常是一个坏主意。