从 SQL Server 2014年在出版物中删除一篇文章后,出现"远程服务器 (null) 不存在"错误

重要说明:本文是由 Microsoft 机器翻译软件进行的翻译并可能由 Microsoft 社区通过社区翻译机构(CTF)技术进行后期编辑,或可能是由人工进行的翻译。Microsoft 同时向您提供机器翻译、人工翻译及社区后期编辑的文章,以便对我们知识库中的所有文章以多种语言提供访问。翻译的文章可能存在词汇、句法和/或语法方面的错误。Microsoft 对由于内容的误译或客户对内容的使用所导致的任何不准确、错误或损失不承担责任。

点击这里察看该文章的英文版: 3184227
症状
假定您使用 SQL Server 2014 年在sp_addpublication存储过程创建事务发布,并将@allow_drop属性设置为True。之后您 dropa 表在发布中发布,并从出版物中手动删除过时的文章,您可能会收到类似于以下内容的错误消息︰
不存在远程服务器"(null)"。

例如,在以下情形中会出现此问题︰
  • 发布表中的事务发布,然后 youset @allow_drop属性设置为True
  • 删除已发布的表。
  • 日志读取器代理进程与拖放表命令相关的记录之前,您通过使用以下存储的过程清除过时的文章︰
    • sp_MSdropobsoletearticle
    • sp_droparticle
    • sp_droppublication
在这种情况下,在详细日志中记录以下错误消息︰
状态︰ 0,代码︰ 1007,文本: 进程无法执行 sp_MSadd_replcmds 上SQL SERVER 实例'.'.
进程无法执行上的 'sp_MSadd_replcmds'SQL SERVER 实例'.
复制代理程序状态︰ 6
状态︰ 0,代码︰ 1007,文本: 远程服务器"(null)"不存在,或未被指定为有效的发布服务器,或您可能没有权限查看可用的发布服务器。。
状态︰ 4,代码︰ 6001,文字: '' 命令加载程序的后台线程正在退出。。
状态︰ 0,代码︰ 22020,文本: 未将批提交到分发服务器上。。
状态︰ 0,代码︰ 22037,文本: 最后一步中没有不记录任何消息 !。

注意在 SQL Server 2014 Service Pack 2 中添加了拖放表支持 (删除表的 DDL)。有关拖放表支持的信息,请参阅以下文章 Microsoft 知识库中相应的文章︰
3170123 在 SQL Server 2014年在事务复制中包括的文章支持删除表的 DDL

解决方案
以下累积更新 SQL Server 中解决此问题︰


有关累积更新 SQL Server
SQL Server 的每个新累积更新包含所有修补程序和所有安全修补程序,已包含在以前的累积更新。为 SQL Server,请查阅最新的累积更新︰

状态
Microsoft 已经确认这是"适用于"一节中列出的 Microsoft 产品中的问题。
参考
了解有关 术语 Microsoft 使用来描述软件更新。

警告:本文已自动翻译

属性

文章 ID:3184227 - 上次审阅时间:08/25/2016 17:22:00 - 修订版本: 1.0

Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Enterprise Core, Microsoft SQL Server 2014 Standard

  • kbqfe kbfix kbexpertiseinter kbsurveynew kbmt KB3184227 KbMtzh
反馈