次の方法で共有


データを復元せずにデータベースを復旧する (Transact-SQL)

通常、SQL Server データベース内のすべてのデータは、データベースが復旧される前に復元されます。 ただし、復元操作では、実際にバックアップを復元することなくデータベースを復旧できます。たとえば、データベースと一貫性のある読み取り専用ファイルを復旧する場合などです。 これは、 復旧のみの復元と呼ばれます。 オフライン データが既にデータベースと一貫性があり、使用可能にする必要がある場合にのみ、復旧のみの復元操作によってデータベースの復旧が完了し、データがオンラインになります。

復旧のみの復元は、データベース全体、または 1 つ以上のファイルまたはファイル グループに対して実行できます。

Recovery-Only データベースの復元

復旧のみのデータベース復元は、次のような場合に役立ちます。

  • 復元シーケンスで最後のバックアップを復元するときにデータベースを復旧しなかったため、データベースを復旧してオンラインにする必要があります。

  • データベースはスタンバイ モードであり、別のログ バックアップを適用せずにデータベースを更新可能にする必要があります。

復旧のみのデータベース復元の RESTORE 構文は次のとおりです。

データベースdatabase_nameを復元してリカバリする

バックアップは必要ないため、FROM =<backup_device> 句は復旧のみの復元には使用されません。

次の例では、データを復元せずに、復元操作で AdventureWorks2012 サンプル データベースを復旧します。

-- Restore database using WITH RECOVERY.  
RESTORE DATABASE AdventureWorks2012  
   WITH RECOVERY  

Recovery-Only ファイルの復元

回復のみのファイル復元は、次の状況で役立ちます。

データベースが段階的に復元されます。 プライマリ ファイル グループの復元が完了すると、保存されていない 1 つ以上のファイルは、しばらくの間読み取り専用になっている可能性があるため、新しいデータベースの状態と一致します。 これらのファイルは回復する必要があります。データのコピーは不要です。

回復のみの復元操作では、オフライン ファイル グループ内のデータがオンラインになります。データコピー、やり直し、または元に戻すフェーズは発生しません。 復元のフェーズについては、「 復元と復旧の概要 (SQL Server)」を参照してください。

回復のみのファイル復元の RESTORE 構文は次のとおりです。

RESTORE DATABASE database_name { FILE =logical_file_name | FILEGROUP =logical_filegroup_name } [,...n] WITH RECOVERY

次の例は、Sales データベースのセカンダリ ファイル グループ (SalesGroup2) 内のファイルの回復専用のファイル復元を示しています。 プライマリ ファイル グループは、段階的な部分復元の最初の手順として既に復元されており、 SalesGroup2 は復元されたプライマリ ファイル グループと一致しています。 このファイル グループを回復してオンラインにする必要があるのは、1 つのステートメントだけです。

RESTORE DATABASE Sales FILEGROUP=SalesGroup2 WITH RECOVERY;  

Recovery-Only 復元を使用した断片的な復元シナリオ完了の例

単純復旧モデル

完全復旧モデル

こちらもご覧ください

オンライン復元 (SQL Server)
段階的な部分復元 (SQL Server)
ファイルの復元 (単純復旧モデル)
ファイルの復元 (完全復旧モデル)
RESTORE (Transact-SQL)