例えば、会員登録サイトを構築して会員情報の検索が遅い時、
まずは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を書いた方がパフォーマンスチューニングしやすいかな、と思ったり。
でわ。