【问题标题】:synchronize two tables stored in different databases同步存储在不同数据库中的两个表
【发布时间】:2014-07-12 03:21:07
【问题描述】:

我在不同的数据库中有两个表。这些表完全相同(相同的名称、相同的列等)。我的问题是,如何从父表中检索新行并存储到子表中?我想过使用 mysqldbcompare,但它比较两个数据库并识别差异,但我需要在表上进行。

mysqldbcompare --server1=root:root@192.100.0.0\ 
--server2=root:root@192.160.0.01 \
inteliviz:inteliviz\
--run-all-test --changes-for=server2 --difftype=sql

如何在这里传递表格。 提前致谢。

【问题讨论】:

    标签: mysql


    【解决方案1】:

    mysqldbcompare 可以生成同步两个数据库所需的sql。我的方法是使用 --difftype=sql 选项来生成生成更改或丢失的行所需的 sql。为了减少 mysqldbcompare 报告中的周围“噪音”,您可以使用 --skip-... 将比较限制为数据一致性检查,除了 data-check 选项。

    类似:

    mysqldbcompare --server1=... \
        --server2=... \
        --difftype=sql \
        --skip-object-compare --skip-object-diff --skip-option-count > report.txt
    

    或者,您可以按照此答案使用INSERT IGNOREREPLACE

    MySQL INSERT INTO WHERE NOT EXIST

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多