MySQL二进制日志相关命令
数据库会话
查看MySQL是否启用了二进制日志
mysql> show variables like 'log_bin';
显示当前服务器使用的二进制文件及大小
mysql> show binary logs;
显示主服务器使用的二进制文件及大小
mysql> show master logs;
当前使用的二进制文件及所处位置
mysql> show master status;
关闭当前的二进制日志文件并创建一个新文件
mysql> flush logs;
查看所有的二进制文件信息
mysql> show binlog events\G;
查看指定日志的二进制信息
mysql> show binlog events in 'mysql-bin.000011';
从指定的事件位置开始
mysql> show binlog events in 'mysql-bin.000011' from 190;
指定偏移量(不是语句,是事件)
mysql> showbinlog events in 'mysql-bin.000011' from 190 limit 3;
删除所有的二进制日志
mysql> reset master;
使用时间来删除二进制日志
mysql> PURGEBINARY LOGS BEFORE '13-10-19 10:26:36';
mysqlbinlog
查看二进制日志文件内容(使用 -d 参数可以指定数据库)
mysqlbinlog mysql-bin.000025
使用二进制日志恢复一个时间段的数据
mysqlbinlog mysql-bin.000025 --start-position 4 --stop-position 2633 | mysql -uroot -p
或者
mysqlbinlog mysql-bin.000025 --start-datetime "2017-01-01 00:00:00" --stop-datetime "2017-01-01 00:10:00" | mysql -uroot -p
禁止恢复过程产生日志
mysqlbinlog -D mysql-bin.000025 --start-position 4 --stop-position 2633 | mysql -uroot -p
也可以使用 --disable-log-bin 参数,效果相同