微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SQLServer 远程服务器不存在,未被指定为有效的发布服务器,或您无权查看可用的发布服务器

创建了事务发布,在初始化时出现错误,查看相关代理信息如下:


日志读取器代理错误

 状态: 0,代码: 20015,文本: '远程服务器 "serverName" 不存在,未被指定为有效的发布服务器,或您无权查看可用的发布服务器。'。
远程服务器 "serverName" 不存在,未被指定为有效的发布服务器,或您无权查看可用的发布服务器。


快照代理错误

异常消息: 远程服务器 "serverName" 不存在,未被指定为有效的发布服务器,或您无权查看可用的发布服务器。 

已以用户  域\用户  的身份执行。 复制代理遇到问题。有关详细信息,请参阅上一个作业步骤历史记录消息或复制监视器。.  该步骤失败。

已以用户 NT AUTHORITY\NETWORK SERVICE 的身份执行。 将截断字符串或二进制数据。 [sqlSTATE 22001] (错误 8152).  该步骤失败。


分发代理错误

Startup Delay: 1042 (msecs)
正在连接到 分发服务器“serverName”
代理消息代码 14080。 远程服务器 "serverName" 不存在,未被指定为有效的发布服务器,或您无权查看可用的发布服务器。



配置应该不会错,代理作业所有者也改为了“sa” ,可能就是权限的问题!


解决方法

1. 该用户 域\用户 是执行代理的用户,授予用户服务器角色: sysadmin 

EXEC master.dbo.sp_addsrvrolemember @loginame = 域\用户',@rolename = N'sysadmin'
GO


2. 右键发布属性,点击 发布访问列表,将该用户添加到其中。



3. 重新初始化,正常了!~

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐