比方说,我有两个数据库,像这样:同时更新两个不同的数据库
DatabaseA
创建表表1(FIELD1 INT,场2 INT,字段3 INT)
DatabaseB
创建表表1(FIELD1 INT,场2 INT)
我们旧的应用程序使用乙,必须继续这样做。我们正在开发一款即将使用A的新应用程序。答:A:表1复制B:Table1?
这里有一些事情要考虑:
- 旧的应用程序只能在b执行
selects
:表1,没有必要的同步化去两种方式。 - 旧应用程序必须保持使用B。
- 中的大部分字段答:表1与相同B:表1,但某些类型的数据转换在某些情况下将需要。
- 性能不是一个大问题,因为不会有太多的修改。
- 首先,只有1到2个表需要同步,但随着我们将更多模块迁移到新版本,将添加更多表。
- 这两个数据库来自不同的供应商。
这里是我考虑的选项:
- 在新的应用程序,请更新到两个数据库:
我不喜欢这个选项,因为它增加了一个新应用程序数据层的复杂性很大,并且两个数据库之间没有事务 - 使用A中的触发器启动
application
将复制在B中的变化
不知道这是一个很好的做法,以及如何可靠是 - 在一个使用触发器发动
stored procedure
复制的更改
一些数据转换可能过于复杂,在存储过程中做 - 启动在设定的时间间隔的应用程序或存储过程来进行更改
不是真正的蒂姆E,所以我宁可不使用此
你对这个恶棍?
我错过了另一种选择吗?
你有没有做过类似的事情?
有没有可以完成这项工作的软件(免费或不是)?
一如既往,非常感谢大家的时间和您的意见。