mysqld
を
--log-slow-queries[=file_name]
オプションで起動すると、実行に
long_query_time
秒より長くかかった
SQL
コマンドがすべてログファイルに書き込まれます。最初のテーブルロックにかかった時間は実行時間に含まれません。
スロークエリログは、クエリ実行後、すべてのロックが解除された後に書き込まれます。これは、ステートメントが実行された順序とは異なる場合があります。
ファイル名を指定しなければ、ホストマシンの名前に
-slow.log
を付けたものがデフォルト名になります。ファイル名を指定し、パスを指定しない場合、ファイルはデータディレクトリに作成されます。
スロークエリログは、実行に時間がかかり、最適化の対象となるクエリを見つけるために使用できます。大きなログでは、これは難しい作業になります。mysqldumpslow
コマンドを使用すれば、ログのクエリサマリを取得できます。
--log-long-format
を使用すれば、インデックスを使用しなかったクエリも出力されます。
See 項4.1.1. 「mysqld
コマンドラインオプション」。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.