事务复制中日志读取错误

进程未能执行“sp_replcmds”(在“HC07120619\DBSERVER02”中)。.  步骤失败,非常恶心和经典的一个错误。尤其容易出现在SqL2000中,如果机器负载太大的话,日志读取就会失败。不知道原因的话就重建吧。删除发布,订阅从新建立新的发布和复制。
如果面对几十个发布和复制的内容,哭吧。

在出错的数据库下,用下面的命令可以解决:
EXEC sp_repldone @xactid = NULL, @xact_segno = NULL, @numtrans = 0,    @time = 0, @reset = 1

Exec
sp_replflush

这样就能搞定了。出问题的原因还是比较多的,不太好找具体的原因。官方给出的这个命令的解释如下:

sp_repldone 用于事务复制。
sp_repldone 由日志读取器进程用来跟踪已分发的事务。


注意  如果手工执行  sp_repldone,可以使已传送事务的顺序和一致性无效。
通过使用  sp_repldone,可以手工告诉服务器某个事务已复制(已发送到分发服务器)。此过程还使您得以更改标记为下一个等待复制的事务。可以在复制事务列表中前后移动。(小于或等于那个事务的所有事务都标记为已分发。)
可以通过使用 sp_repltrans 或 sp_replcmds 获得必需的参数 xactid 和  xact_seqno。


注意  可以在紧急情况下使用此过程,以允许在有事务挂起复制时截断事务日志。使用此过程可防止 Microsoft® SQL  Server™ 2000 在未发布和重新发布数据库之前复制数据库。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值