将第三方数据库“复制”到中央mySQL并使mySQL保持最新状态

时间:2012-11-12 13:07:38

标签: mysql replication

我有一个问题,我认为这个问题非常复杂,并希望看到像您这样的专家对我的解决方案的看法。

问题:

我正在从多个第三方收集数据到中央mySQL数据库。第三方可以拥有任何数据库产品(mySQL,Oracle,postgreSQL等)。我需要执行两项任务,如下所示:

  1. 首次启动时,将完整数据库复制到中央mySQL数据库
  2. 在对第三方数据库进行更改时,逐步更新中央mySQL数据库
  3. 建议的解决方案:

    1. 我打算在每个第三方数据库的C#中创建数据库搜寻器。所以说例如第三方之一有一个oracle数据库。我打算创建一个类,它将查询oracle数据库的定义和数据,并以编程方式创建由中央mySQL数据库执行的sql查询。 例如:创建表XYZ(id1 int,id2 int),插入XYZ值(1,2)等。
    2. 这是给我最大悲痛的问题。我想知道是否有人曾经查询过数据库,以便有效地询问它“你的最新变化是什么”,或者自dd-mm-yyyy以来你的变化是什么......:MM:ss。通过更改,我指的是数据更改和数据定义更改。例如:添加新列,更新[row] [column]值,插入新行等

1 个答案:

答案 0 :(得分:0)

如果您可以访问数据库编写器程序,那么您不能只注入一个生成/写入数据到中央数据库(也就是LOGGER)的代码吗?
我的意思是你可以把你的中央数据库作为“记录数据库”。 如果由于某种原因第三方数据库需要数据库回滚,您可以从当前时间戳到timestamp-rollback_days,并从INSERT更改为DELETE,DELETE更改为INSERT等。

这样,您的数据库不会受到太大影响,因为您复制了整个数据库:)