MySQLサーバーでクエリ履歴をログファイルに保存する方法

なんだか、ネットで調べていると情報があちこちに分散されているようなので、ここらで簡単にまとめておきたいと思います。

MySQLでクエリーのログを吐き出したい場合は、まず設定ファイル(/etc/my.cnf)に次のように「log=…」でログファイルの保存先を指定します。

[mysqld]
...(中略)...
log=/var/log/mysql_query.log

この後、MySQLの起動スクリプトに云々と書いてあるところがありますが、そんな回りくどいことはしなくてOK。 次のように事前に空のログファイルを作成しておきパーミッションをmysqlにしておきます。

# touch /var/log/mysql_query.log
# chown mysql:mysql /var/log/mysql_query.log

そして、最後にMySQLサーバーを再起動させればOK。

# /etc/init.d/mysql restart

起動コマンドは各々のサーバーに従ってくださいね。

tailコマンドでリアルタイム監視

tailコマンドに「-f」オプションをつけることで、クエリーが正しく実行されているかどうかをリアルタイムに監視することができますよ。

# tail -f /var/log/mysql_query.log

お役に立ちましたでしょうか?

このページをシェアする

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

2012-05-15