5.通过mysql二进制日志实现增量备份及恢复----------按照时间

*************按照时间恢复数据,对同时执行的操作,不能剔除在此时间包含的操作

1.打开二进制日志

a.进如mysql服务配置文件

# vi /etc/my.cnf 

5.通过mysql二进制日志实现增量备份及恢复----------按照时间_第1张图片

b.打开二进制日志(默认是关闭)

5.通过mysql二进制日志实现增量备份及恢复----------按照时间_第2张图片

c.创建目录myslq-log

d.修改mysql-log权限为mysql.族

# chown mysql. /var/lib/mysql-log

e.关闭selinux

f.重启mysql服务

g.服务重启后mysql-log下会生成记录日志

h.查看此日志需要使用mysqlbinlog

5.通过mysql二进制日志实现增量备份及恢复----------按照时间_第3张图片

2.对数据库进行操作后刷新,会生成新的log-bin日志

5.通过mysql二进制日志实现增量备份及恢复----------按照时间_第4张图片

3.使用整库备份结合增量备份的方式对数据进行完成恢复

a.整库备份db1,目前db1库中只有一个表t1,表中只有两条数据

5.通过mysql二进制日志实现增量备份及恢复----------按照时间_第5张图片

b.整库备份操作

c.整库备份后,又向表中插入了两条数据

5.通过mysql二进制日志实现增量备份及恢复----------按照时间_第6张图片

d.误删db1库

5.通过mysql二进制日志实现增量备份及恢复----------按照时间_第7张图片

e.停数据库服务,清理文件,启动服务,导入备份的全库

5.通过mysql二进制日志实现增量备份及恢复----------按照时间_第8张图片

f.使用增量备份恢复,备份后插入的两条数据

f1.查看log-bin日志,分析插入这两条数据的时间节点

5.通过mysql二进制日志实现增量备份及恢复----------按照时间_第9张图片

f2.使用mysqlbinlog恢复这两条数据

# mysqlbinlog log-bin.000005 --start-datetime='2019-04-26 22:18:37' --stop-datetime='2019-04-26 22:22:43' |mysql -uroot -psunxianjiu
***结束时间我写的是删前一秒,怕把删命令也恢复了,就白费劲了,生产环境应该根据情况自己把握

5.通过mysql二进制日志实现增量备份及恢复----------按照时间_第10张图片

你可能感兴趣的:(Mysql)