.net column

.NET開発者のためのブログメディア
ログファイル

【SQL Serverログの操作】トランザクションログの使用量を確認する方法

2020年03月16日

トランザクションログはご存知でしょうか。普段からSQL Serverに関わる仕事をされている方でしたら、きっと理解されているはずです。トランザクションログはとても大切なことですので、ここでトランザクションログの概要やT-SQLを利用してのログ使用量の確認方法などを一緒に確認していきましょう。

SE
トランザクションログってデータベースを復旧させる時とかに必要となる大切なログファイルのことですよね?
PL
そのとおりです。知っている方も多いでしょうが、ここで改めてこのログの概要やログの使用量、空き領域の取得方法などを確認していきましょう。

トランザクションログの概要

トランザクションログとは、データベース毎に発生したトランザクションとそれらのトランザクションによって加えられた変更がすべて記録されたとても大切なログファイルです。
システム障害が発生した場合、データベースを一貫性のある状態に戻すために、このログファイルが必要となってきます。

トランザクションログは少なくとも1つのファイルで構成されています。ファイルの拡張子は「.ldf」です。複数のファイルで構成されている場合でも、1ファイルずつ利用され、同時に2つ以上のファイルが利用されることはありません。

sys.dm_db_log_space_usageで使用量を確認する方法

トランザクションログの使用量を確認します。確認する場合は、sys.dm_db_log_space_usageテーブルから情報を取得します。まずは、sys.dm_db_log_space_usageで準備されている全カラムを取得して確認しましょう。

取得内容

データベースID ログのサイズ ログの占有サイズ ログサイズの合計に対するログの占有サイズ 前回のログバックアップ以降に使用された領域のサイズ
database_id total_log_size_in_bytes used_log_space_in_bytes used_log_space_in_percent log_space_in_bytes_since_last_backup
8 8380416 776704 9.268085 113152

ここで重要なのが、「ログのサイズ」カラムと「ログの占有サイズ」カラムです。この両カラムからログの使用量を確認し、またログの空き領域のサイズも同時に確認できます。
次に、上記の結果をふまえログの空き領域を確認しましょう。

取得内容(メガバイトで表示されます)

ログの空き領域(メガバイト)
free log space in MB
7.25146484375
SE
トランザクションログの状況を把握することは大事なことですよね。新人の頃はSQLをコーディングするだけでも一苦労でしたが、こういったこともすぐに確認できて一人前のエンジニアですね。
PL
実際にトランザクションログのことまで把握できているエンジニアは一握りだと思います。ですが、こういったことまで把握できているエンジニアになってこそ、一流のエンジニアだと思います。積極的にトランザクションログについても学習していきましょう。

トランザクションログについての理解はお早めに

データは企業にとってとても大切な資産です。この資産を守ることもシステムエンジニアの大切な使命です。トランザクションログについての理解を深めることは、データを守る上で欠かすことできない知識だと思いますので、トランザクションログについての理解は今すぐにでも深めていきましょう。


.NET分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

求人一覧

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)