升级到SQL Server 2008 R2,复制监视器中进程无法在“XXX”上执行“sp_replcmds”

在将SQL Server 2005升级到SQL Server 2008 R2,升级时间约30分钟,完成后,复制监视器中发现

进程无法在“XXX(服务器名)”上执行“sp_replcmds”。

解决方案1:
在分发服务器上执行下述操作
use 数据库名
EXEC sp_repldone @xactid =NULL, @xact_segno =NULL, @numtrans = 0, @time =0, @reset =1
EXEC sp_replflush

sp_replcmds (Transact-SQL)
返回标记为要复制的事务的命令。 此存储过程在发布服务器的发布数据库中执行。

sp_repldone (Transact-SQL)
更新用于标识服务器的最后一个已分发事务的记录。 此存储过程在发布服务器上的发布数据库中执行。
注意:
可以在紧急情况下使用此过程,以允许在有事务挂起复制时截断事务日志。

sp_replflush (Transact-SQL)
刷新项目缓存。 此存储过程在发布服务器的发布数据库中执行。

 

解决方案2:

 1、通过错误消息中的LSN,查找数据库日志文件中相应的事务 select * from fn_dblog(null,null) where [current
LSN]='0006d221:0000bbae:00XX'

2、查看相应的事务记录,找到所涉及到的数据库对象

3、在发布项目中取消该数据库对象

4、在发布中增加数据库对象项目

转载于:https://www.cnblogs.com/suther/archive/2012/06/15/2550292.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值