徵狀

假設您使用 SQL Server 2014 或2016中的 [ sp_addpublication ] 儲存程式來建立事務性發佈,並將@allow_drop 屬性設定為 True。 在您除去出版物中發佈的資料表,並手動移除發佈中過時的文章之後,您可能會收到類似以下的錯誤訊息:

遠端伺服器 "(null)" 不存在。

例如,在下列情況中會發生這個問題:

  • 您可以在事務發佈中發佈資料表,然後將 @allow_drop 屬性設定為 True。

  • 您移除已發佈的資料表。

  • 在記錄讀取器代理程式處理與 [刪除資料表] 命令相關的記錄之前,您可以使用下列其中一個儲存程式程式來清除過時的文章:

    • sp_MSdropobsoletearticle

    • sp_droparticle

    • sp_droppublication

在這種情況下,會在詳細記錄中記錄下列錯誤訊息:

狀態:0,代碼:1007,文字:「SQL_SERVER_INSTANCE' 上的進程無法執行 ' sp_MSadd_replcmds」。進程無法在 "SQL_SERVER_INSTANCE" 上執行 "sp_MSadd_replcmds"。複製代理程式狀態:6Status:0,程式碼:1007,文字:「遠端伺服器」(null)」不存在,或者尚未指定為有效的發行者,或者您可能不具備查看可用的發行者的許可權。狀態:4,程式碼:6001,文字:「命令載入程式的背景執行緒」正在退出。狀態:0,代碼:22020,文字: ' 批次未提交至分發伺服器。」。狀態:0,代碼:22037,文字:「最後一個步驟沒有記錄任何訊息!」。

注意: 已新增在 SQL Server 2014 Service Pack 2 中的 Drop table 支援(DROP TABLE DDL)。 如需 drop table 支援的相關資訊,請參閱 Microsoft 知識庫中的下列文章:

3170123 支援針對 SQL Server 2014 中的事務性複製所包含的文章刪除資料表 DDL

解決方案

此問題已在 SQL Server 的下列累積更新中修正:

Sql server 2014 Service Pack 2 的累積更新 1適用于 sql server 2016)累積更新 2

每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:

Sql server 2014 的最新累計更新 sql server 2016 的最新累計更新

狀態

Microsoft 已確認<適用於>一節中所列的 Microsoft 產品確實有上述問題。

參考

瞭解 Microsoft 用於描述軟體更新的 術語

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Insiders

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?

Thank you for your feedback!

×