Mysql 如何将表从一台服务器更新到另一台服务器?

Mysql 如何将表从一台服务器更新到另一台服务器?,mysql,select,insert-update,Mysql,Select,Insert Update,我需要从一台服务器到另一台服务器进行更新,只能获得下面的代码。 我想知道错误在哪里 如果能很好地分离代码 <?PHP $db_host1 = "10.0.0.101"; $db_user1 = "dns"; $db_password1 = "123456"; $db_name1 = "dns"; $db_connect1 = mysqli_connect($db_host1, $db_user1, $db_password1, $db_name1); if (my

我需要从一台服务器到另一台服务器进行更新,只能获得下面的代码。 我想知道错误在哪里

如果能很好地分离代码

<?PHP
$db_host1     = "10.0.0.101";
$db_user1     = "dns";
$db_password1 = "123456";
$db_name1     = "dns";
$db_connect1  = mysqli_connect($db_host1, $db_user1, $db_password1, $db_name1);
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$db_host2     = "10.0.0.102";
$db_user2     = "dns";
$db_password2 = "123456";
$db_name2     = "dns";
$db_connect2  = mysqli_connect($db_host2, $db_user2, $db_password2, $db_name2);
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

mysqli_query($db_connect2,"UPDATE ipserver SET ipsserver = ($db_connect1,"SELECT ipsserver FROM ipserver WHERE idserver = '11'") WHERE idserver = '11'");

mysqli_close($db_connect1);
mysqli_close($db_connect2);
?>

您应该设置MySQL复制(主/从)并仅在主数据库上执行查询。见文件:

对于仅一次查询,请替换该行:

mysqli_query($db_connect2,"UPDATE ipserver SET ipsserver = ($db_connect1,"SELECT ipsserver FROM ipserver WHERE idserver = '11'") WHERE idserver = '11'");
使用此代码:

$result = mysqli_query(
  $db_connect1,
  "SELECT ipsserver FROM ipserver WHERE idserver='11'"
);

while ($row=$result->fetch_assoc()) {
  $ipsserver = $row["ipsserver"];

  mysqli_query(
    $db_connect2,
    "UPDATE ipserver SET ipsserver='$ipsserver' WHERE idserver='11'"
  );
}

恐怕你需要一个循环来从一个读取并插入到另一个。好的,我该怎么做?就像@jon做的那样。连接抽象下面有一个隐式游标。没有什么神奇的。我只需要更新这个字段。我不想在系统中做重大更改为您的通缉案件添加详细信息谢谢您的工作,但我仍然收到一个错误
PHP致命错误:在第25行调用未定义的函数mysqli_fetch_all()
它位于
$rows=mysqli_fetch_all($result,MYSQLI_ASSOC);
感谢@Jon Dinham帮助我解决问题。我将把已经修复的脚本放在上面。再次您好,如果我需要将所有这些复制到表中。再次感谢
$result = mysqli_query(
  $db_connect1,
  "SELECT ipsserver FROM ipserver WHERE idserver='11'"
);

while ($row=$result->fetch_assoc()) {
  $ipsserver = $row["ipsserver"];

  mysqli_query(
    $db_connect2,
    "UPDATE ipserver SET ipsserver='$ipsserver' WHERE idserver='11'"
  );
}