SQL Server错误21899怎么修复?远程支持处理重定向发布服务器查询失败该怎么搞?sysserver条目问题怎么确定?

文章导读
错误21899通常是因为复制中重定向发布服务器配置问题导致的,修复方法:在发布服务器上运行 sp_changedbowner 'sa' 或 sp_changedbowner 'domain\user' 来更改数据库所有者,确保所有者能访问sysservers。然后在订阅服务器上执行 sp_addlinkedserver 'publisher_server', 'SQL Server'。重启复制代理
📋 目录
  1. 来源1
  2. 来源2
  3. 来源3
  4. 来源4
  5. 来源5
  6. 来源6
  7. 来源7
A A

错误21899通常是因为复制中重定向发布服务器配置问题导致的,修复方法:在发布服务器上运行 sp_changedbowner 'sa' 或 sp_changedbowner 'domain\user' 来更改数据库所有者,确保所有者能访问sysservers。然后在订阅服务器上执行 sp_addlinkedserver 'publisher_server', 'SQL Server'。重启复制代理,重定向就会正常工作。sysservers条目问题通过查询SELECT * FROM sysservers WHERE srvname = 'publisher_server_name' 来确定,如果缺失就添加。

来源1

错误21899: 远程支持处理重定向发布服务器查询失败。解决方案:1. 检查发布服务器的sysservers表,确保订阅服务器正确列出。EXEC sp_addserver 'subscriber_server', 'local'。2. 确保登录账户有sysadmin权限。3. 在订阅服务器上删除并重新添加链接服务器:sp_dropserver 'publisher', droplogins; sp_addlinkedserver 'publisher', 'SQL Server'。4. 重新配置重定向发布服务器。

来源2

这个问题是因为sysservers中没有正确的条目。查询sysservers:select * from master..sysservers where srvname = '远程发布服务器名'。如果没有,执行:sp_addserver '远程发布服务器名', 'SQL Server'。然后停止并启动SQL Server服务。复制代理就能正常处理重定向了。

SQL Server错误21899怎么修复?远程支持处理重定向发布服务器查询失败该怎么搞?sysserver条目问题怎么确定?

来源3

SQL Server 错误 21899。远程支持处理重定向发布服务器查询失败。解决:使用 sp_serveroption 'publisher_server', 'data access', 'true' 在订阅服务器上启用数据访问。然后检查防火墙,确保1433端口开放。最后,运行分布代理时指定 -PublisherFailoverPartner 参数如果适用。

来源4

sysserver条目问题确定方法:连接到订阅服务器,执行 SELECT srvname, srvstatus FROM sysservers WHERE srvname LIKE '%publisher%'。如果srvstatus不是0x2,就用 sp_serveroption 修复。常见原因是重命名服务器后没更新sysservers。

来源5

修复21899:1. 在发布服务器上设置重定向发布服务器为 NULL:sp_configure 'allow updates', 1; RECONFIGURE; UPDATE sys.servers SET is_remote_login_enabled = 1 WHERE name = 'subscriber'; 但最好用脚本重建链接。2. 验证所有服务器有相互信任的登录。

SQL Server错误21899怎么修复?远程支持处理重定向发布服务器查询失败该怎么搞?sysserver条目问题怎么确定?

来源6

遇到这个错误,重启SQL代理服务无效。最终解决:在订阅服务器的复制监视器中,右键代理-属性-运行信息,添加参数 -PublisherFailoverServer。sysservers问题用 xp_sqlagent_enum_jobs 检查代理状态。

来源7

FAQ:
Q: 错误21899还会出现什么原因?
A: 网络问题、权限不足或发布服务器重定向配置不对。
Q: 如何检查sysservers条目?
A: SELECT * FROM sys.servers WHERE name = 'your_publisher';
Q: 修复后复制还失败怎么办?
A: 检查分发数据库日志,清理旧代理历史记录。
Q: 事务复制和合并复制都适用吗?
A: 是,主要事务复制重定向场景。