1、二进制日志恢复数据
(1)查看所使用的日志
show master status;
(2)查看日志的事务
show binlog events in 'mysql-bin.000005';
(3)截取日志,找到起点和终点
mysqlbinlog --start-position=276 --stop-position=879 /data/binlog/mysql-bin.00005 >/tmp/bin.sql
(4)mysql会话窗口执行恢复
source /tmp/bin.sql
2、gtid恢复数据
(1)开启gtid,修改配置
vim /etc/my.cnf
gtid-mode=on
enforce-gtid-consistency=true
重启mysql
(2)错误恢复
(1)进入mysql会话窗口直接source,会报错,因为要检查幂等性,1-3已经做过了
(2)导出gtid日志
mysqlbinlog --include-gtids='c1678cc2-270a-11eb-bd2e-000c29e32742:1-3' mysql-bin.000007 >/tmp/gtids.sql
(3)正确做法
(1)忽略幂等性导出gtid日志
mysqlbinlog --skip-gtids --include-gtids='c1678cc2-270a-11eb-bd2e-000c29e32742:1-3' mysql-bin.000007 >/tmp/gtids.sql
(2)进入mysql会话窗口
set sql_log_bin=0 关闭当前会话二进制日志
source /tmp/gtids.sql