1 场景描述:
create table gyj_t1(id int,name varchar(10));
insert into gyj_t1 values(1,'AAAAA');
commit;
2 mysqldump全库备份。。。
mysqldump -h127.0.0.1 -uroot -p --single-transaction --master-data=2 jfedu >jfedu.sql
3 插入数据 并且 清空数据表
insert into gyj_t1 values(2,'BBBBBB');
commit;
truncate table gyj_t1;
4 通过备份的文件还原
source /home/mysql/jfedu.sql
此时查看数据 表里只恢复了一条数据
5 通过binlog恢复
通过前面备份中间中记录的binlog位置: binlog.000006 , MASTER_LOG_POS=939
查看binlog.00006 939之后的事件:
mysql> show binlog events in 'binlog.000006';
由上可知,只用恢复到posion 1143 即可
进入 binlog 目录
mysqlbinlog binlog.000006 --start-position=939 --stop-position=1143 |mysql -uroot -p