我可以为sql server事务复制添加延迟吗?

时间:2010-05-04 15:59:22

标签: sql sql-server-2008 transactional-replication

我将事务复制从名为DBProd的数据库配置到另一个名为DBWarehouse的数据库;一切正常,交易通常会立即复制到仓库......这就是我的问题。

我想为复制添加一点延迟(类似10分钟),以便可以使用复制的数据库访问以前版本的数据库(例如,如果发生错误)

有没有一种简单的方法可以达到这个目的?

2 个答案:

答案 0 :(得分:2)

无法为每笔交易添加延迟。您可以将分发代理程序的pollinginterval参数(http://technet.microsoft.com/en-us/library/ms147328.aspx)更改为更长时间,但在轮询时间之前进行的所有事务都将被移动。

请注意,延迟轮询间隔也会延迟清除事务日志的非活动部分的能力。日志记录在移动之前不会处于非活动状态,因此请为此做好计划。

这类似于日志传送延迟。直到日志备份的所有内容都被发送完毕并且在那时都恢复了。

如果您正在寻找类似的东西 1:00在小学改变A. 1:10在小学改变b 1:30将变更A移至中学 1:40将B改为次要

你不能这样做。事务是批量移动的,而不是基于事务提交时间的某些延迟。

答案 1 :(得分:0)

您应该可以在Subscriber Scheduling选项中执行此操作。