【MySQL】実行したQuery(SQL)をLog出力して監視する設定
MySQLに発行するSQLを監視したかったので設定したときの覚書。
環境: CentOS 5.9 x86_64, MySQL 5.5.29
参考にしたのは下記Site
MySQL起動Scriptを編集。「--log」「--general-log」を追加
# vi /etc/rc.d/init.d/mysqld
$exec --datadir="$datadir" --socket="$socketfile" \
--pid-file="$mypidfile" \
$MYOPTIONS \
--basedir=/usr --user=mysql --general-log >/dev/null 2>&1 &
設定cnfを編集
# vi /etc/my.cnf
[mysqld]
# output query log
log=/var/log/mysql_query.log
ログファイルの作成
# touch /var/log/mysql_query.log
# chmod 640 /var/log/mysql_query.log
# chown mysql. /var/log/mysql_query.log
MySQL再起動
# /etc/rc.d/init.d/mysqld restart
監視開始
# tail -f /var/log/mysql_query.log
ほっておくとファイル容量が大きくなるので、普段はOFFにしておいた方がいいかも。
< 2013/01/31 Modified >
起動ログファイルに下記Warningが出力された。今は「--general-log」を使うらしい。
参考: MySQL :: MySQL 5.5 Reference Manual :: 5.2.1 Selecting General Query and Slow Query Log Output Destinations
[Warning] The syntax '--log' is deprecated and will be removed in a future release. Please use '--general-log'/'--general-log-file' instead.
< Related Posts >