【问题标题】:Gap between initializing database and setup transactional replication?初始化数据库和设置事务复制之间的差距?
【发布时间】:2015-03-24 21:25:55
【问题描述】:

我需要为大型数据库设置事务复制。我使用备份/恢复来初始化数据库,因为它太大而无法在慢速网络上使用快照。所以采用以下步骤

  1. 备份数据库
  2. 复制备份文件
  3. 在订阅服务器上恢复数据库
  4. 设置复制

但是,如果在第 1 步之后和第 4 步之前之间有一些数据更改(插入/更新/删除)怎么办?这些交易会丢失吗?或者复制设置会失败?如何解决问题?

【问题讨论】:

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


    【解决方案1】:

    要从备份初始化事务订阅,您实际上首先要创建发布,使其能够从备份初始化订阅,然后进行备份,然后使用备份初始化订阅。

    在进行备份之后和初始化订阅之前发生的更改将存储在分发数据库中,该数据库充当存储转发队列。在从备份初始化之后,这些更改将被复制到订阅者。

    请注意,默认情况下,分发清理作业会根据发布保留期从分发数据库中清除超过 72 小时的事务。您可能希望在备份之前暂时禁用此作业,并在从备份初始化订阅后重新启用它。

    看看Initialize a Transactional Subscription Without a SnapshotInitialize a Transactional Subscription from a Backup

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-10-29
      • 2014-04-05
      • 2015-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-12
      相关资源
      最近更新 更多