通常は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。