web-dev-qa-db-ja.com

SQL Server:ログのバックアップ後もトランザクションログが非常に大きい

完全復旧モードのデータベースがあります。

以前は完全バックアップを作成し、その後、毎日、差分バックアップを追加しました。

これで、トランザクションログを初めてバックアップしました。これは、.bakファイルのファイルサイズが大幅に増加したことを反映しています。ただし、\ DATAディレクトリ内のログファイルは同じサイズです。

here と他の場所で述べたように、トランザクションログファイルはログバックアップで自動的に切り捨てられるという印象を受けました。

以前、私はStack Overflow( here )について質問しましたが、その答えは、ログファイル情報がディスク上の実際のログで最新ではないことを示していました。この観察はそうですか?

その場合、Windowsファイルを更新して最新のデータを表示するにはどうすればよいですか?

2
Zach Smith

バックアップを行ったため、トランザクションログは自動的には縮小されません。ログが大きくなるとプロセスが実際に停止するため、これは実際には良いことです。現在のサイズにログを拡張する必要があるプロセスがあったため、ログが現在のサイズに増加しました。これらは、長時間の作業単位であり、多くのログレコード(インデックスのメンテナンスなど)を生成した可能性があります。参照しているログの「切り捨て」とは、ログのバックアップ後、ログ領域が「再利用」できることを意味します。このプロセスでも、ログのサイズが自動的に縮小されることはありません。ログサイズを小さくするには、ログファイルを ' shrink 'にする必要があります。ログは通常、再成長するだけでパフォーマンスに影響を与えるため、繰り返しログを縮小することはお勧めしません。ログを「縮小」する場合は、成長率を監視する必要があります。 ここ は役立つ記事です。また、追加情報を提供する この記事 も見つけました。

4
Scott Hodgin