MSSQL_ENG003165

適用対象: SQL ServerAzure SQL Managed Instance

メッセージの詳細

属性
製品名 SQL Server
イベント 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) を実行して、すべてのレプリケーション設定を削除します。

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

参照

SQL Server データベースのバックアップと復元
レプリケートされたデータベースのバックアップと復元
エラーとイベントのリファレンス (レプリケーション)