什么原因会导致 SQL 2008 日志读取器代理失败并显示“此过程无法执行‘sp_replcmds’”?

什么原因会导致 SQL 2008 日志读取器代理失败并显示“此过程无法执行‘sp_replcmds’”?

我在其他帖子中看到过此错误消息。它们似乎无助于解决我们的问题。我们正在使用两台 SQL Server 2008 服务器尝试此操作。我从源服务器备份了我的数据库,然后在目标服务器上恢复了它。我们设置了基本的事务复制。快照代理工作正常。日志读取器代理失败并出现上述错误。这很可能是此作业的登录问题还是 QueryTimeout?

答案1

使用相同的登录名和 SID 在主服务器和镜像服务器上创建登录名

步骤 1:在主体上创建登录名“abc”

步骤2:使用以下代码复制登录的SID:-

“使用 master 从 syslogins 中选择 SID、名称、dbname”

步骤3:使用以下代码在镜像中创建登录“abc”:-

创建登录测试,密码为“xyz”,SID =“主体 abc 登录的 SID”

步骤 4:使用 sp_changedbowner 'abc' 更改镜像数据库和主体数据库的数据库所有者

步骤5:您的问题已解决:)

答案2

Rick,我没有答案,因为我的设置和你一样,也遇到了同样的错误。但是,当我在 SQL 2008 下设置新的测试数据库时,复制工作正常,但我尝试复制的数据库最初是在 SQL 2000 中运行的,所以我猜问题与此有关??

答案3

听起来日志读取器运行的帐户在一个或多个数据库中没有权限。

相关内容