0

多くの場合、ログ ファイルは大きくて扱いにくいものです。ログ ファイルを使用せずに (または空のログ ファイルを使用して) SQL Server データベースを "バックアップ" する方法はありますか?

4

3 に答える 3

1

ログの一部は、実際にはバックアップに含まれています。これは、復元時に一貫性を確保する方法です。バックアップの実行中に変更されたページは、ログ (またはログに記録された変更) から取得され、復元プロセスの最後に適用されます。

これを回避することはできませんが、SQL Server が行うログの量を制限することはできます。データベースをシンプルモードにすることでこれを行いますが、これを行うと、誰かがで発行した時点まで回復できないことを理解してください

delete myTable

WHERE句を忘れていました。完全バックアップからのみ復元できます。

やりたいことは、(BACKUP DATABASE コマンドを使用して) データベースを定期的にバックアップし、BACKUP LOG コマンドをより頻繁に実行することです。通常、小規模なデータベースのフル バックアップを毎晩行ってから、1 時間ごとにログ バックアップを行います。これにより、これらすべてのバックアップ ファイルを保持していれば、1 日のうちの任意の時点に回復できます。

また、BACKUP LOG コマンドは再利用のためにログ ファイルのスペースを解放するため、ログ ファイルのサイズも管理します。

于 2009-01-30T16:32:37.287 に答える
0

データベースの完全バックアップを作成する直前に、次を実行します。

BACKUP LOG databasename WITH TRUNCATE_ONLY

前に行う理由は、将来のログ バックアップでポイント イン タイムの一貫性が維持されるようにするためです。このようにして、常に有効なチェーンを保持します (とにかく、このフル バックアップから - TRUNCATE により、最後のログ バックアップがあったときからポイント イン タイム リストアを実行できなくなりますが、すべてのデータのみのバックアップはまだ有効です)。

于 2009-01-12T19:24:38.283 に答える
0

申し訳ありませんが、あなたの質問は意味がありません。

BACKUP DATABASE では、ファイルではなく、データ ファイル (MDF および NDF) からデータページをバックアップします。次に、エンジンは、バックアップ中に発生したすべての変更を (ログエントリから) 追加します。

ログ エントリ (ファイルではない) は、BACKUP LOG でバックアップされます。データベースに単純復旧モデルがある場合、これは必要ありません。

DB を復元すると、ディスク上にファイルが再作成されます。これはあなたが意味するものですか?

ログ ファイル自体は、すべての RDBMS の動作に不可欠です。

ここでの唯一の問題は、BCP/DR 戦略のコンテキストでそれらをバックアップ/復元する方法です。

于 2009-01-12T20:32:39.817 に答える