MySQLの詳細ログ出力設定について

例えば、会員登録サイトを構築して会員情報の検索が遅い時、
まずはSQLを調べますよね?

PHP等でO/Rマッパーを使っている場合、
実際にどのようなSQLが投げられているかがよくわからなかったりします。


そんな時は、ログを出力するようにしましょう。


設定は簡単です。
my.cnf に設定を追加するだけです。

# cd /etc
# vi my.cnf
[mysqld]
log=/var/log/mysqld_detail_access.log

これだけ。
設定追加後は、MySQLのプロセス再起動をしましょう。


これで、MySQLに実際に投げられているクエリがログに出力されます。


実際に見てみるとわかりますが、思った以上にゴリゴリとSQLが投げられています。


開発効率を考えてO/Rマッパーを使うのもいいですが、
素でSQLを書いた方がパフォーマンスチューニングしやすいかな、と思ったり。


でわ。