次の方法で共有


MSSQL_ENG014010

適用対象: SQL Server Azure SQL Managed Instance

メッセージの詳細

属性 Value
製品名 SQL Server
イベント ID 14010
イベント ソース MSSQLSERVER
コンポーネント SQL Server データベース エンジン
シンボル名
メッセージ テキスト サーバー '%s' はサブスクリプション サーバーとして定義されていません。

説明

レプリケーションでは、オプションのインスタンス名を持つコンピューター名 (クラスター化されたインスタンスの場合は、オプションのインスタンス名を持つ SQL Server 仮想サーバー名) を使用して、トポロジ内のすべてのサーバーが登録されることを想定しています。 レプリケーションが正しく機能するためには、トポロジの各サーバーに対して SELECT @@SERVERNAME によって返された値が、コンピューター名または仮想サーバー名と、オプションのインスタンス名で一致している必要があります。

IP アドレスまたは完全修飾ドメイン名 (FQDN) によって SQL Server インスタンスを登録している場合、レプリケーションはサポートされません。 レプリケーションの構成時に SQL Server Management Studio で IP アドレスまたは FQDN によって登録された SQL Server インスタンスがある場合は、このエラーが発生する可能性があります。

ユーザーの操作

トポロジ内のすべての SQL Server インスタンスが正しく登録されていることを確認します。 コンピューターのネットワーク名と SQL Server インスタンスの名前が異なる場合は、次のいずれかを実行してください。

  • SQL Server インスタンス名を有効なネットワーク名として追加します。 代替ネットワーク名を設定する 1 つの方法は、その名前をローカル ホスト ファイルに追加することです。 既定では、ローカル ホスト ファイルは \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 の値がクラスター化されたインスタンスに対して適切でない場合は、クラスター アドミニストレーターを使用して名前を変更する必要があります。 詳細については、「Always On フェールオーバー クラスター インスタンス (SQL Server)」を参照してください。

参照

@@SERVERNAME (Transact-SQL)
エラーとイベントのリファレンス (レプリケーション)