通常、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)