MSSQL_ENG003165

メッセージの詳細

製品名

SQL Server

製品バージョン

10.0

製品ビルド番号

 

イベント ID

3165

イベント ソース

MSSQLSERVER

コンポーネント

SQL Server データベース エンジン

シンボル名

メッセージ テキスト

データベース '%ls' は復元されましたが、レプリケーションの復元または削除中にエラーが発生しました。データベースはオフラインのままです。SQL Server オンライン ブックのトピック「MSSQL_ENG003165」を参照してください。

説明

このエラーは、レプリケートされたデータベースのバックアップの復元で問題が生じた場合に発生します。

  • バックアップをその作成元と同じデータベースおよびサーバーに復元している場合、このエラーは、レプリケーション設定を適切に復元できなかったことを示します。

  • バックアップを異なるデータベースまたはサーバーに復元している場合、このエラーは、レプリケーション設定を適切に削除できなかったことを示します (既定では、データベースまたはサーバーが異なる場合、レプリケーション設定は削除されます)。

このエラーは、復元されたデータベースと、レプリケーション メタデータを含む 1 つ以上のシステム データベース、つまり msdbmaster、またはディストリビューション データベースの間の状態の不一致が原因と考えられます。

ユーザーの操作

この問題を解決するには、次の手順を実行します。

  1. ALTER DATABASE を実行し、データベースをオンラインにします。たとえば、「ALTER DATABASE AdventureWorks SET ONLINE」と実行します。詳細については、「ALTER DATABASE (Transact-SQL)」を参照してください。レプリケーションの設定を保存する場合は、手順 2. に進みます。それ以外の場合は、手順 3. に進みます。

  2. sp_restoredbreplication (Transact-SQL) を実行します。このストアド プロシージャの実行に成功した場合、復元は完了です。実行に失敗した場合は、手順 3. に進んでください。

  3. sp_removedbreplication (Transact-SQL) を実行し、すべてのレプリケーション設定を削除します。

    必要に応じて、レプリケーションを再構成します。推奨どおりにレプリケーション トポロジのスクリプトを作成している場合は、スクリプトを使用してトポロジを再構成してください。