【问题标题】:How to copy records from Server1 db1 table1 to Server2 db2 table2?如何将记录从 Server1 db1 table1 复制到 Server2 db2 table2?
【发布时间】:2014-02-10 19:06:05
【问题描述】:
INSERT INTO Table2 (id, name,age)

SELECT Table1.Id,Table1.name,Table1.age FROM Table1 LEFT JOIN Table2
ON (Table1.id=Table2.id) WHERE Table2.id IS NULL

当这两个表在同一个数据库上时,上面的代码对我将数据从一个表传输到另一个表非常有帮助。

但是,现在我必须执行相同的任务,但要跨不同的服务器!有人可以编辑上面的代码以便于理解吗?谢谢。

附:请使用:

Server1 访问 => 'ip1', 'user1', 'pass1', 'db1'

Server2 访问 => 'ip2', 'user2', 'pass2', 'db2'

【问题讨论】:

  • 简短回答您不能直接在 mysql 中执行此操作。您可以尝试使用联合存储引擎,请参阅文档dev.mysql.com/doc/refman/5.0/en/federated-storage-engine.html
  • @MiniGunnR:班西是对的。如果要直接执行此操作,则必须使用联合存储引擎。阅读:How to Use FEDERATED Tables
  • 谢谢大家。我目前正在阅读 bansi 提供的文档,但是,它说我必须完全按原样复制这两个表。所以,如果我只想从包含 30 列的表中同步几列,我似乎做不到。 :-/
  • 访问以下链接希望对您有所帮助。 stackoverflow.com/questions/5937443/…>

标签: php mysql synchronization


【解决方案1】:

你可以这样做,没问题。告诉我一件事,你想在 PHP 文件中使用这个查询...

【讨论】:

  • 是的。我想通过 cron 每 5 或 10 秒运行一次此脚本,以便这两个表同步。我不知道这是否是最好的方法。 :)
  • 之前您没有告诉我们您希望每 5 - 10 秒运行一次这些表...
  • 如果可以做一次,我想重复做不是问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-14
  • 2020-07-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多