在SQL Server中同步两个表

时间:2010-08-17 06:00:46

标签: sql-server database

您好我有两台数据库服务器(2台不同的机器,但在同一网络上)。 我在Database_1中有一个表,在Database_2中有相同的表。

只有DB_1中的表将由用户更新,DB_2中的表将被其他用户用于只读。

我想编写可以将更新的记录从DB_1中的表复制到DB_2的内容。我想让它基于事件,就像有人在Table @ DB_1中插入记录一样,我会得到表@ DB_2中的记录。

有人可以给我一些建议吗?

3 个答案:

答案 0 :(得分:1)

根据系统的大小,更新频率和复杂程度,复制可能是您需要的答案。从提供的细节来看,Transactional replication听起来最合适。

答案 1 :(得分:0)

数据的时间敏感程度如何?这对我来说有两种可能性。

建议1:有触发器使数据与链接服务器上的表保持同步。

建议2:使用DTS / SSIS包保持DB_2同步。根据必要的情况,安排包每隔五分钟或五分钟运行一次。

答案 2 :(得分:0)

查看Oracle GoldenGate

  

“Oracle GoldenGate提供基于日志的实时变更数据捕获和异构系统之间的交付。使用该技术,它可实现经济高效且影响较小的实时数据集成和持续可用性解决方案。” p>