共用方式為


MSSQL_ENG014010

訊息詳細資料

產品名稱

SQL Server

產品版本

10.0

產品組建編號

 

事件識別碼

14010

事件來源

MSSQLSERVER

元件

SQL Server Database Engine

符號名稱

訊息文字

伺服器 '%s' 並未定義為訂閱伺服器。

說明

針對拓撲中所有伺服器,複寫預計應使用電腦名稱與選擇性的執行個體名稱註冊 (叢集執行個體則為 SQL Server 虛擬伺服器名稱加上選擇性的執行個體名稱)。 要讓複寫正常運作,SELECT @@SERVERNAME 針對拓撲中每部伺服器傳回的值,都應該符合電腦名稱或虛擬伺服器名稱加上選擇性執行個體名稱。

若您已透過 IP 位址或完整格式的網域名稱 (FQDN) 註冊任一 SQL Server 執行個體,就不支援複寫。 如果在您設定複寫時透過 IP 位址或 SQL Server Management Studio 中的 FQDN 註冊了任意 SQL Server 執行個體,便會引發此錯誤。

使用者動作

確認拓撲中的所有 SQL Server 執行個體均已正確註冊。 若電腦網路名稱和 SQL Server 執行個體名稱不符,則:

  • 加入 SQL Server 執行個體名稱做為有效網路名稱。 設定另一可用網路名稱的方法之一,是將它加入本機主機檔案。 本機主機檔案預設位於 WINDOWS\system32\drivers\etc 或 WINNT\system32\drivers\etc。 如需詳細資訊,請參閱 Windows 文件集。

    例如,若電腦名稱為 comp1,電腦 IP 位址是 10.193.17.129,且執行個體名稱為 inst1/instname,請將下列項目加入主機檔案:

    10.193.17.129 inst1

  • 移除複寫,註冊每個 SQL Server 執行個體,然後重新建立複寫。 如果 @@SERVERNAME 的值不是非叢集執行個體正確的值,請依循下列步驟:

    sp_dropserver '<old_name>', 'droplogins'
    go
    sp_addserver '<new_name>', 'local'
    go
    

    執行 sp_addserver (Transact-SQL) 預存程序之後,您必須重新啟動 SQL Server 服務,@@SERVERNAME 的變更才能生效。

    如果 @@SERVERNAME 的值不是正確的非叢集執行個體值,則必須使用叢集管理員變更名稱。 如需詳細資訊,請參閱<AlwaysOn 容錯移轉叢集執行個體 (SQL Server)>。

請參閱

參考

@@SERVERNAME (Transact-SQL)

概念

錯誤和事件參考 (複寫)