进程无法在“XXX”上执行“sp_repldone/sp_replcounters”(SQL Server)

这篇博客讨论了在SQL Server中遇到的复制错误,包括MSSQL_REPL20011、9003和MSSQL_REPL22017等。错误可能由于数据损坏或日志文件不匹配引起。提供的解决方案包括执行特定的SQL命令以重置复制状态,以及在必要时禁用并重新创建发布和订阅。
摘要由CSDN通过智能技术生成

错误消息:
进程无法在“XXX”上执行“sp_repldone/sp_replcounters”。 (源: MSSQL_REPL,错误号: MSSQL_REPL20011)
获取帮助: http://help/MSSQL_REPL20011
传递给数据库 'XX' 中的日志扫描操作的日志扫描号 (9346079:256:62) 无效。此错误可能指示数据损坏,或者日志文件(.ldf)与数据文件(.mdf)不匹配。如果此错误是在复制期间出现的,请重新创建发布。否则,如果该问题导致启动期间出错,请从备份还原。 (源: MSSQLServer,错误号: 9003)
获取帮助: http://help/9003
进程无法设置上次分发的事务。 (源: MSSQL_REPL,错误号: MSSQL_REPL22017)
获取帮助: http://help/MSSQL_REPL22017
进程无法在“XXX”上执行“sp_repldone/sp_replcounters”。 (源: MSSQL_REPL,错误号: MSSQL_REPL22037)
获取帮助: http://help/MSSQL_REPL22037

解决方案:

步骤1:

先在XX库执行以下语句:

EXEC sp_repldone @xactid = NULL, @xact_segno = NULL, @numtrans = 0, @time = 0, @reset = 1

exec sp_replflush

然后生成快照并初始化订阅。如问题得到解决,则忽略步骤2。

步骤2:

右键“复制”,选择“禁用发布和分发”,会删除所有发布。等待完成后,指定发布服务器,重新创建所有发布和订阅。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值