MS SQL に大規模なデータベースがあり、テーブルの 1 つが日付列で分割されています。主キー インデックスも、同じパーティション関数を使用してパーティション分割されます。データベースは、データが 3 か月ごとにバッチで追加されるため、単純復旧モデルで保持されます。
DBCC checkfilegroup で整合性エラーが検出されたため、完全なバックアップからファイル グループを 1 つだけ戻す必要がありました。
復元では、簡易モードでファイル グループの復元を実行できなかったため、完全復旧モードに変更してから、次のコマンドを実行しましたが、エラーは発生しませんでした。
データベースを復元します filegroup='2003' from disk=N'backupfile-name.bak' with recovery
「with recovery」条項でこれを正常な状態に戻すことを期待していましたが、プロセスは次のようなメモで終了しました
現在、ロール フォワードの開始点はログ シーケンス番号 (LSN) 511972000001350200037 です。復元シーケンスを完了するには、LSN 549061000001370900001 を超える追加のロール フォワードが必要です。
このファイル グループを含むデータベース テーブルにクエリを実行すると、テーブルのパーティションの 1 つがオフライン、復元中、または機能していないためにアクセスできないため、主キーにアクセスできないというメッセージが表示されます。
「with recovery」句で、このファイル グループを完全に復元したままにしなかったのはなぜですか。それで?データベース全体が非常に大きい (1.5 TB)。最初にフル モデル モードでバックアップを作成する必要があるため、ログ ファイルをバックアップできません。ファイルグループ自体はわずか 300 GB です。
復元をもう一度実行できますが、これを実行する正しい方法を知りたいです。完全復旧モードを維持し、完全なデータベース バックアップから断片的なファイル グループ バックアップを実行する方法はありますか?