SQL Server复制错误:“发布'XYZ'的初始快照尚不可用”

时间:2014-08-07 13:22:34

标签: sql-server replication database-replication

我正在使用sql server 2012,并且我已经在两台服务器之间设置了快照复制。快照代理成功完成,但复制代理似乎永远在运行,无法停止。

来自复制监视器的操作消息如下:

  

初​​始化
  应用脚本' ScriptX.pre'
  ...
  批量复制数据到表格'
  ...
  从“replicaDataSubFolder”中传送快照'子文件夹,以x毫秒为单位   发布的初始快照' XYZ'目前尚不可用。

然后行动信息停留在最后一句话并且无法停止 有什么想法吗?

2 个答案:

答案 0 :(得分:1)

消息 发布'XYZ'的初始快照尚未可用 很可能是由于快照代理尚未完成快照而弹出的瞬态消息

生成快照后,分发代理开始应用快照,这就是您在x毫秒内从'replicaDataSubFolder'子文件夹中看到 传递快照的消息的原因.....批量将数据复制到表'tabA'

这是正常的设计。

验证快照是否已成功应用于订阅者。您可以通过检查订户的数据来执行此操作。

答案 1 :(得分:0)

这个link解决了我的问题。

原因:

您已经创建或重新初始化了使用“是,初始化架构和数据”选项创建的事务订阅,并且在启动快照代理之前或快照代理完成之前启动了分发代理。仅当与分发代理程序关联的一篇文章时,您才会看到此错误。如果有多个与分发代理程序相关联的文章,您可能会看到错误21075,“发布'%s'的初始快照尚不可用。”

解决方案:

如果自创建订阅以来尚未启动关联的Snapshot Agent,或者自上次选择重新初始化订阅以来尚未启动关联的Snapshot Agent,则需要启动Snapshot Agent并使其完成,然后再启动分销代理。

如果Snapshot Agent未完成,请检查Snapshot Agent历史记录中的错误并解决。如有必要,可以将日志添加到快照代理,以查看是否可以为错误返回更多详细信息。