メッセージの詳細
| 製品名 | 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 である場合は、hosts ファイルに次のエントリを追加します。
10.193.17.129 inst1
レプリケーションを削除し、各 SQL Server インスタンスを登録してから、レプリケーションを再確立します。 @@SERVERNAMEの値が非クラスター化インスタンスに対して正しくない場合は、次の手順に従います。
sp_dropserver '<old_name>', 'droplogins' go sp_addserver '<new_name>', 'local' gosp_addserver (Transact-SQL) ストアド プロシージャを実行した後、変更を有効にするには SQL Server サービスを再起動@@SERVERNAME必要があります。
クラスター化されたインスタンスに対して @@SERVERNAME の値が正しくない場合は、クラスター管理者を使用して名前を変更する必要があります。 詳細については、「 AlwaysOn フェールオーバー クラスター インスタンス (SQL Server)」を参照してください。