0

您好有一个大数据库(~30GB),我需要将其复制到两个不同位置的两台服务器。我启用了复制并启用了“允许从备份初始化”并执行了以下步骤:

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

从主服务器到 server1 的复制工作正常。

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

警告:分发代理作业已隐式创建,并将在 SQL Server 代理服务帐户下运行。作业“XXX-181”已成功启动。消息 21397,级别 16,状态 1,过程 sp_MSsetupnosyncsubwithlsnatdist,第 248 行 同步从指定备份创建的 nosync 订阅所需的事务在分发服务器上不可用。使用更新的日志、差异或完整数据库备份再次重试该操作。订阅者被删除。

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

4

1 回答 1

0

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

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

于 2014-06-29T18:25:43.497 回答