通常はmysqldの起動時に-l /path/to/logとかオプションを付けるけれど、MySQL 5.1.12から実行中のmysqldのグローバル変数(でいいのかな?)をいじることによってログ出力の有効/無効を切り替えれるそうな。
手元のMySQL 5.6.14で試してみた。
一旦\qしてもう一度つないでみると、
ログを取るのをやめたいときは
手元のMySQL 5.6.14で試してみた。
mysql> SET GLOBAL general_log = 'ON'; Query OK, 0 rows affected (0.00 sec)とすると、データベースの実態が置かれているディレクトリにhostname.logというファイルが作られる。試した環境では/var/db/mysql/hostname.logとなって、その中身は
/usr/local/libexec/mysqld, Version: 5.6.14-log (Source distribution). started with: Tcp port: 0 Unix socket: /tmp/mysql.sock Time Id Command Argumentこんな感じ。
一旦\qしてもう一度つないでみると、
/usr/local/libexec/mysqld, Version: 5.6.14-log (Source distribution). started with:
Tcp port: 0 Unix socket: /tmp/mysql.sock
Time Id Command Argument
131031 19:53:52 15 Quit
131031 19:54:02 16 Connect root@localhost on
16 Query select @@version_comment limit 1
こんな感じに。ログを取るのをやめたいときは
mysql> SET GLOBAL general_log = 'OFF'; Query OK, 0 rows affected (0.00 sec)でOK。