トップへ(mam-mam.net/)

MySQLで遅いSQL(スロークエリ)をログに残すには

検索:

「MySQLで遅いSQL(スロークエリ)をログに残すには」

遅いSQLがあるが、どうすれば遅いSQLを検出できるか

回答

MySQLで遅いSQL(スロークエリ)をログに残すには
Windowsの場合はmy.ini、Linuxの場合はmy.cnfに以下設定を行う


[mysqld]
# スロークエリの出力設定 0:OFF 1:ON
slow_query_log=1

# スロークエリと判定する秒数の設定(0を設定すると全SQLが対象)
long_query_time=3

# スロークエリログ保存ファイル名の設定
#Windowsの例
#slow_query_log_file='C:/pleiades/xampp/mysql/logs/slow_query.log'
#Linuxの例
slow_query_log_file ='/usr/local/var/mysql/slow_query.log'

ソース

設定後はMySQLの再起動を行う
CentOS7以降
  systemctl restart mysqld
CentOS6以前
  service mysqld restart

ログに残すため、パフォーマンスが若干落ちるので注意