r3421555 发表于 2017-8-18 09:00:45

mysqlbinlog根据时间点提取SQL

将test库2017-08-14 16:30:29至2017-08-14 17:30:31的binlog日志导出为1.sql:


1
mysqlbinlog --start-datetime="2017-08-14 16:30:29" --stop-datetime="2017-08-14 17:30:31" --database=test mysql-bin.000893 >1.sql





对于MIXED(部分SQL语句)和ROW模式是以base-64方式记录,SQL部分会显示为base64编码,要正常显示还得加上两个参数:

1
mysqlbinlog -v --base64-output=DECODE-ROWS--start-datetime="2017-08-14 16:30:29" --stop-datetime="2017-08-14 17:30:31" --database=test mysql-bin.000893 >1.sql





另外mysqlbinlog命令无法直接过滤表,可以结合grep命令达到过滤表的目的。

页: [1]
查看完整版本: mysqlbinlog根据时间点提取SQL