あちこちに書いてあったのを試してみましたが、以下の書き方で出力されました
CentOS6
mysql5.1.61
/etc/my.cnfに追記
log_slow_queries
long_query_time = 1
slow_query_log_file=/var/log/mysqld/mysql-slow.log
indexが効いてないクエリを抽出したい場合はこれを足す
log-queries-not-using-indexes
ものすごい勢いで書き込まれるので負荷がすごいです
書きっぱなしにするのはやめた方がいいでしょう
slow-queryを見る
mysqldumpslow -s t /var/log/mysqld/mysql-slow.log
logrotateも設定しておく
slowlogはすごい量が記録されてしまうので、logrotateも設定しておきます
/etc/logrotate.d/mysqld
/var/log/mysqld/*log {
missingok
notifempty
sharedscripts
delaycompress
postrotate
/sbin/service mysqld reload > /dev/null 2>/dev/null || true
endscript
}
httpdをコピーして、mysqldに書き直しただけです
参考リンク
処理が遅いSQL文をログとして出力する | Linuxで自宅サーバ構築
MySQLのスロークエリログから一部を切り出して分析するパッチ – SH2の日記
MySQL5.1のlog出力とlogrotate設定 | ijo.cc
5.5を触っているつもりが5.1だったので色々混乱したっていう話なのでした
コメント