MySQLのクエリログ出力をmysqlの再起動をすること無く切り替える方法

MySQLのgeneral_logを一時的に出力して、どんなSQLが発行されているか見たい、でも一回見てあとは肥大化するので止めておきたい、という時の対応方法です。

出力する方法

mysql> set global log_output='TABLE';
mysql> set global general_log='ON';
mysql> use mysql;
mysql> select * from general_log order by  event_time desc limit 500;

なお、ファイル出力はこの方法ではうまく行きませんでした。(ファイルの書き込み権限の関係とかで色いろあるのかもしれません)

出力を停止する方法

mysql> set global general_log='OFF';

参考

http://qiita.com/haoling/items/c67ed2e3d371f5b7d8cc