web-dev-qa-db-ja.com

SQL 2008データベースから単一の巨大なテーブルをアーカイブします-ファイルグループのバックアップ?

非常に大きなテーブル(データサイズ400GB、2.5TBデータベース内)があり、不要になりました。ただし、削除する前に、クライアント契約では、将来のある時点で回復する必要がある場合に備えて、テープにアーカイブする必要があると規定されています。

最も明白なアイデアは、データベースの完全バックアップを単純にアーカイブすることですが、データベースの合計サイズが原因で、この非常に大きなバックアップからこの1つのテーブルを回復するのは困難です。

テーブルを空のデータベースにエクスポートして、それをバックアップすることもできると思います。これは私のフォールバックオプションかもしれません。

ただし、このテーブルは独自のファイルグループの一部であるため、ファイルグループのバックアップについて質問したいと思います。これは私にとって有効なオプションですか?

ファイルグループの復元に関するこの記事 を正しく理解していれば、答えはノーですが、データベースがSIMPLEリカバリモード(FULLではない)であるため、ここで私のケースが当てはまるかどうかはわかりません。バックアップ後にファイルグループを完全に削除しています。

ファイルグループのバックアップはオプションですか?それとも私は他の2つのうちの1つと一緒に行くべきですか?

3
BradC

[〜#〜] bcp [〜#〜] 抽出をお勧めします。

  • BCPをファイルにエクスポートします。
  • どこか(別のデータベースまたはサーバー)をインポートして、ファイルが「良好」であることを確認します。
  • 複数のコピーを複数のテープにアーカイブします。

@Marianは私の質問に BCPリファレンス の素晴らしいリストで答えました。 BCP Basics by SQLFoolも、10人にとって良いスターターです。

2

Big Tableを削除した後も、DBでトランザクションが実行されるため、DBを一貫性のある状態に復元するにはログのバックアップが必要になります。これらのログバックアップには、大きなテーブルを削除したトランザクションが含まれます。

他のオプションを使用する必要がある場合があります。ファイルグループの復元を使用する利点は、一貫した状態に到達するために完全な復元を実行する必要がないため、時間を節約できることです。

0
StanleyJohns