Vagrant環境でクエリログを出力していたのですが大量にたまりすぎたので削除。
そうしたらなぜか今度はクエリログが出力されなくなった。
my.cnfの設定は
log-output=FILE
general_log=1
general_log_file=/var/log/mysql/general-query.log
となっており再起動すれば正常に出力されるはずなのに出力されない。
SHOW VARIABLES LIKE '%log%';
で設定を表示してみると
general_logの項目がOFFになっている!
set global general_log='ON';
を実行するとエラー
ERROR 29 (HY000): File xxxxxxx not found (Errcode: 13 - Permission denied)
色々調べてみた結果どうやらログファイル及びログファイルが保存されているディレクトリのパーミッションの権限の問題のようで
chmod -R 777 /var/log/mysql
mysqlにログインし
set global general_log='ON';
でmysqlを再起動したら出力されるようになりました。
パーミッションについて適切なパーミッションにあとで調べて設定。