バイナリログ
MySQL5.0で実行しています。
バイナリログの一覧表示
mysql> SHOW MASTER LOGS; +------------------+-----------+ | Log_name | File_size | +------------------+-----------+ | mysql-bin.000001 | 98 | +------------------+-----------+ 1 row in set (0.00 sec)
リセットした後だから少ない……
バイナリログの切り替え
mysql> FLUSH LOGS; Query OK, 0 rows affected (0.05 sec) mysql> SHOW MASTER LOGS; +------------------+-----------+ | Log_name | File_size | +------------------+-----------+ | mysql-bin.000001 | 141 | | mysql-bin.000002 | 98 | +------------------+-----------+ 2 rows in set (0.00 sec)
新しいバイナリログ mysql-bin.000002 が出来た。
バイナリログの内容表示
最新のバイナリログを表示
mysql> SHOW BINLOG EVENTS; +------------------+-----+-------------+-----------+-------------+----------------------------------------------------+ | Log_name | Pos | Event_type | Server_id | End_log_pos | Info | +------------------+-----+-------------+-----------+-------------+----------------------------------------------------+ | mysql-bin.000001 | 4 | Format_desc | 1 | 98 | Server ver: 5.0.45-community-nt-log, Binlog ver: 4 | +------------------+-----+-------------+-----------+-------------+----------------------------------------------------+ 1 row in set (0.02 sec)
バイナリログを指定して表示
SHOW BINLOG EVENTS IN 'mysql-bin.000001';
FROM や LIMIT も使用できる
SHOW BINLOG EVENTS IN 'mysql-bin.000001' FROM 1; SHOW BINLOG EVENTS IN 'mysql-bin.000001' LIMIT 2,3;
バイナリログの全削除
mysql> RESET MASTER; Query OK, 0 rows affected (0.11 sec) mysql> SHOW MASTER LOGS; +------------------+-----------+ | Log_name | File_size | +------------------+-----------+ | mysql-bin.000001 | 98 | +------------------+-----------+ 1 row in set (0.00 sec)
部分的に削除したい場合は
指定したログ以前を削除
PURGE MASTER LOGS TO 'mysql-bin.000011';
mysql-bin.000011 より古いバイナリログを削除。
mysql-bin.000011 自体は削除されません。
指定した時刻以前のログを削除
PURGE MASTER LOGS BEFORE '2008-02-08 15:00:00';
指定された時刻の含まれるバイナリログより古いログを削除。
日時の含まれるバイナリログ自体は削除されません。
更新ログを出力するには
- パラメータ「--log-update」を指定してMySQLを起動する
- 設定ファイル my.cnf に「log_update」を設定する。
クエリログを出力するには
- パラメータ「--log」を指定してMySQLを起動する
- 設定ファイル my.cnf に「log」を設定する。
ログファイルは ホスト名.log です。
Windows の場合は c:/mysql/data/host.log でした。
以下は show tables したところ。
C:\mysql\bin\mysqld.exe, Version: 5.0.45-community-nt-log (MySQL Community Edition (GPL)). started with: TCP Port: 3306, Named Pipe: /tmp/mysql.sock Time Id Command Argument 080208 21:27:04 1 Connect ODBC@ as anonymous on test 1 Query show table 080208 21:27:06 1 Query s e 080208 21:27:08 1 Query show tables