在镜像/并行DB上应用删除操作

时间:2015-07-13 05:08:43

标签: database oracle postgresql

  

设置

位于不同位置的两个数据库

  1. 本地服务器(Oracle):用于内部数据输入和 处理
  2. Live Server(Postgres):用作公共网站的数据库。
  3.   

    THE SCENARIO

    • 在Local上执行每日数据插入/更新/删除 DB一天到晚。
    • 当天结束后,当天的全部数据都是 使用CSV文件和Sql merge推送到Live DB服务器。
    • 使用最新更新和新更新Live DB服务器 已插入数据。
      

    问题

    由于在一天结束时使用运行批处理更新了Live服务器,因此不会在Live服务器上应用删除操作。 由于这些不需要的数据也会保留在Live Server上,从而导致两台服务器上的数据出现差异。

    如何在Live Server上应用本地数据库服务器上的删除操作以及更新和插入?

    P.S。 整个Live DB都要进行重组,因此任何需要分解和重构数据库服务器的解决方案也可以进行调查。

1 个答案:

答案 0 :(得分:0)

Oracle GoldenGate支持从Oracle到PostgreSQL的复制。它肯定会比你的手动方法更快,更不容易出错,因为数据库处理它的程度要低得多。

如果由于某种原因您不想这样做,那么您将返回触发器,在表中删除已删除记录的PK表。

或者你可以用Oracle切换PostgreSQL: - )