0

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 です。

復元をもう一度実行できますが、これを実行する正しい方法を知りたいです。完全復旧モードを維持し、完全なデータベース バックアップから断片的なファイル グループ バックアップを実行する方法はありますか?

4

1 に答える 1

1

私は答えを見つけました。要するに、単純復旧モデルは非常に限られているということです。同じバックアップからすべての読み取り/書き込みファイル グループをまとめて復元する必要があります。個々の読み取り/書き込みファイル グループは、読み取り/書き込みファイル グループの最後のバックアップの前に読み取り/専用 (それ以上の変更がない) になっている限り、個別に復元できます。

要するに、単一の読み取り/書き込みファイル グループを復元できるのは、完全または一括ログ モデルのみです。Bulk-Logged モデルは、単純なモデルではなく、バッチ ロードを使用するデータ ウェアハウスで使用する必要があるモデルです。私の設計ミス。

マイクロソフトから見る

http://msdn.microsoft.com/en-us/library/ms191253.aspx

次に、単純なモデルの断片的な復元を見て ください http://msdn.microsoft.com/en-us/library/ms190984%28v=sql.100%29.aspx 非常に限定的

于 2014-09-23T13:23:45.417 に答える