设置 SQL Server 2000 事务复制时是否需要禁用对发布者数据库的访问?

设置 SQL Server 2000 事务复制时是否需要禁用对发布者数据库的访问?

我有一个生产数据库,即其中有不断更新的数据库,并且我已将其配置为使用事务复制将其发布到另一台服务器。

当我配置事务复制时,我一直在执行以下操作:

  • 禁用对源数据库的访问
  • 备份源数据库然后恢复到订阅服务器
  • 配置复制
  • 重新启用我们应用程序的数据库访问

这种方法的问题在于停机安排,必须暂停我们运行的所有各种定时计划任务,并关闭依赖于该数据库的各种应用程序的访问。

我是否可以只配置事务复制而不禁用对发布数据库的访问,并且订阅数据库将正确跟上?即,所有 DML 语句是否都在发布服务器上排队,并且一旦订阅服务器准备就绪,它们就会被挑选出来并执行?

答案1

简单的答案是不需要...您不需要禁用对系统的访问等。下面是原因和工作原理...当您设置复制时,发布者会在您创建发布的那一刻创建数据快照。还有一个日志读取器与事务复制同时运行,它会捕获自上次创建快照以来的每个事务。所以...创建订阅者基本上是一个两步过程:

步骤 1:将快照应用于订阅服务器,在订阅服务器数据库上创建模式和数据。

步骤2:然后,按顺序在订阅服务器上应用自快照以来的事务,以使订阅服务器数据库保持最新数据。

所以基本上,不,您不需要做所有其他为创建新订阅者所做的工作。

需要帮助请叫我。

谢谢!

—虚拟机

相关内容