从两个订户的备份还原复制

时间:2014-06-25 08:28:02

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

你有一个大型数据库(~30GB),我需要复制到两个不同位置的两个服务器。我启用了复制并启用了#34;允许从备份初始化"并做了以下步骤:

  1. 备份主服务器上的数据库
  2. 将备份文件复制到server1。
  3. 恢复server1上的数据库
  4. 在主服务器上添加订阅。
  5. 从主服务器到server1的复制正在运行。

    1. 在主服务器上进行了全新备份。
    2. 在server2上复制和恢复
    3. 在server2上添加订阅者(使用sp_addsubscription)
    4.   

      警告:已隐式创建分发代理作业,该作业将在SQL Server代理服务帐户下运行。       工作' XXX-181'开始成功了。       Msg 21397,Level 16,State 1,Procedure sp_MSsetupnosyncsubwithlsnatdist,Line 248       同步从指定备份创建的nosync订阅所需的事务在分发服务器上不可用。使用更新的日志,差异或完整数据库备份再次重试该操作。       订阅者被删除了。

      我做错了什么? 我必须为两台服务器使用相同的备份文件吗? 感谢

1 个答案:

答案 0 :(得分:0)

备份的lsn必须作为xact_seqno的一部分位于分发数据库中。您可能已经过了保留期,这意味着备份中的lsn不再位于分发数据库中。

最好的办法是停止分发清理代理,删除并重新创建问题订阅,备份数据库,重新创建订阅,然后重试。