MSSQL_ENG014117
メッセージの詳細
製品名 |
SQL Server |
製品バージョン |
10.0 |
製品ビルド番号 |
|
イベント ID |
14117 |
イベント ソース |
MSSQLSERVER |
コンポーネント |
SQL Server データベース エンジン |
シンボル名 |
|
メッセージ テキスト |
'%s' はディストリビューション データベースとして構成されていません。 |
説明
このエラーは、次のいずれかまたは両方に該当する場合に発生する可能性があります。
指定したディストリビューション データベースのエントリが、msdb..MSdistributiondbs に存在しない場合。
master データベース内にローカル サーバーのエントリがない場合、またはエントリは存在するが正しくない場合。
レプリケーションでは、コンピューター名とオプションのインスタンス名 (クラスター化されたインスタンスの場合は、SQL Server 仮想サーバー名とオプションのインスタンス名) を使用して、トポロジのすべてのサーバーを登録する必要があります。 レプリケーションが正しく機能するためには、トポロジの各サーバーに対して SELECT @@SERVERNAME によって返された値が、コンピューター名または仮想サーバー名と、オプションのインスタンス名で一致している必要があります。
SQL Server インスタンスのいずれかを IP アドレスまたは完全修飾ドメイン名 (FQDN) で登録している場合、レプリケーションはサポートされません。 レプリケーションの構成時に、SQL Server Management Studio 内に IP アドレスまたは FQDN で登録された 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
ディストリビューションを無効化し、インスタンスを登録して、ディストリビューションを再設定してください。 @@SERVERNAME の値が、クラスター化されていないインスタンスに対して適切でない場合は、次の手順を実行してください。
sp_dropserver '<old_name>', 'droplogins' go sp_addserver '<new_name>', 'local' go
sp_addserver (Transact-SQL) ストアド プロシージャを実行したら、SQL Server サービスを再起動し、@@SERVERNAME への変更を有効にする必要があります。
@@SERVERNAME の値がクラスター化されたインスタンスに対して適切でない場合は、クラスター アドミニストレーターを使用して名前を変更する必要があります。 詳細については、「AlwaysOn フェールオーバー クラスター インスタンス (SQL Server)」を参照してください。
ディストリビューター インスタンスが正しく登録されていることを確認したら、ディストリビューション データベースが msdb..MSdistributiondbs の一覧に表示されているかどうかを確認します。 表示されていない場合は、次の手順を実行します。
ディストリビューション構成のスクリプトを作成します。 詳細については、「レプリケーションのスクリプト作成」を参照してください。
ディストリビューションを無効化してから、再度有効化します。 詳細については、「ディストリビューションの構成」を参照してください。