2009-05-05 6 views
54

SQL ServerのLDFファイルとは何ですか?その目的は何ですか?SQL ServerのLDFファイルとは何ですか?

私はそれを安全に削除できますか?場合によってはデータベースファイルmdfよりも10倍大きいので、サイズを小さくしてください。

答えて

3

ldfはdbのログを保存しますが、実際のデータは保存されませんが、データベースの適切な機能にとって非常に重要です。

ただし、ログのモデルがデータベースに変更されるので、このログはあまり速く成長しません。

たとえば、thisをチェックします。

hereを参照してください。

+2

データログとトランザクションログのバックアップを別々に行っていない場合、バックアップをシンプルモードに設定しない限り、ログファイルは無期限に増加します。その後、ログファイルを縮小してディスク領域を回復できます。 – Richard

8

LDFはトランザクションログです。これは、ロールバックの目的でデータベースに行われたすべての記録を保持します。

あなたは削除したくないですが、dbcc shrinkfileコマンドで縮小できます。 SQL Server Management Studioでデータベースを右クリックして、[タスク]> [縮小]に移動することもできます。

1

LDFは「ログデータベースファイル」の略で、トランザクションログです。これは、ロールバックの目的でデータベースに行われたすべての記録を保持します。すべての制御情報とトランザクション情報が含まれるため、.msfファイルを失った場合でもデータベースを復元できます。

+7

この回答の新機能は他にはありませんか? – RichardTheKiwi

38

LDFはトランザクションログを保持します。バックアップを正しく設定すると、バックアップは小さくなります。データベースの回復モードをFULLに設定し、トランザクションログ(LDFファイル)のバックアップを忘れるという非常に一般的な問題があります。それを修正する方法を説明しましょう。

  1. あなたのビジネスは、単にLDFを忘れ、その後、SIMPLEにデータベースの復旧モードを設定し、バックアップの間にほとんどのデータを失うことに余裕があれば - それは小さくなります。ほとんどの場合、これは推奨される解決策です。
  2. 正確な時点にリストアできる必要がある場合は、FULLリカバリモードを使用してください。この場合、定期的なトランザクションログのバックアップを取る必要があります。これを行う最も簡単な方法は、SqlBackupAndFTP(公開 - 私は開発者です)のようなツールを使うことです。この時点でログファイルは切り捨てられ、一定の制限を超えて拡大することはありません。

ログをトリミングするためにSHRINKFILEを使用することをお勧めします。これは例外としてのみOKであることに注意してください。定期的に行うと、完全復旧モデルの目的を破ります。まず、ログに記録された変更を1つずつ保存してから、ダンプします。代わりにリカバリモードをSIMPLEに設定してください。

+0

@ 'SqlBackupAndFTP'ツールがうまく見えます。おかげでロス –

+0

ちょうど好奇心:バックアップを取っている間、トランザクションが行われている場合はどうなりますか? 1つのプロセスがファイルのバックアップを取っている間に、別のプロセスがそのファイルに書き込み中ですか? –

+0

私はそれが問題であると聞いたことがありません。私は具体的にそれが実装されている方法についての参照を見つけることができません。 – Ross

関連する問題