由于分发数据库执行一个较长的事务,达到了系统预定的72小时,导致了该订阅过期,数据库分发代理已不可再启用,提示错误如下:

 

错误信息:已将此(这些)订阅标记为不活动,必须将其重新初始化。需要删除 NoSync 订阅,然后重新创建它们

解决:

找到数据库服务器找到distribution数据库

他这个里面有一张表dbo.MSsubscriptions

状态字段(0 = 不活动;1 = 已订阅;2 = 活动)

查找状态不正常的发布

use distribution  
go
select status,*from dbo.MSsubscriptions where status <>2

查看哪些发布的status 是 0的,记下它们的publication_id

假定我查询到的publication_id为6

update sub set status = 2
from distribution.dbo.MSsubscriptions sub 
where status<>2 and publication_id='6'

执行之后,重新关闭和启动该分发代理作业,会初始化发布订阅

 

posted on 2019-07-15 17:26  小油2018  阅读(2827)  评论(5编辑  收藏  举报