1、有关增量备份的配置
my.ini 里
# Binary Logging.
// # log-bin 如果只去掉 # 就默认在 datadir 这个路径里存 binlog 文件
log-bin = D:/iweb/binlog/mylogbin
重启mysql,成功则
2、查看 logbin 文件
在 mysql 的bin目录下
mysqlbinlog D:\iweb\binlog\mylogbin.000002
P.S.
问题:这里,我第一次打印出来的除了 create 和 drop 都是乱码:
# at 4
#170810 7:04:34 server id 1 end_log_pos 123 CRC32 0xb10dce65 Start: binlog v 4, server v 5.7.9-log created 170810 7:04:34 at startup
# Warning: this binlog is either in use or was not closed properly.
ROLLBACK/*!*/;
BINLOG '
ApWLWQ8BAAAAdwAAAHsAAAABAAQANS43LjktbG9nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAClYtZEzgNAAgAEgAEBAQEEgAAXwAEGggAAAAICAgCAAAACgoKKioAEjQA
AWXODbE=
'/*!*/;
原因:
隔离级别太低了,我的默认隔离级别是READ-COMMITTED,所以导致binlog记录的必须都是row模式,解析出来的是乱码,强行用-v显示出来也是row模式,所以我将隔离级别升级为REPEATABLE-READ的话,就会有row格式也会有statement格式了。
解决方法:
transaction_isolation = REPEATABLE-READ
binlog_format=MIXED
结果:
3、恢复到 binlog 的某一位置 \ 时间
mysqlbinlog --start-position="401" --stop-position="956" d:\iweb\binlog\mylogbin.000004 | mysql -uroot -p
// --start-time | --stop-time