数据库增量备份恢复
完全备份与增量备份 | 备份与恢复
(误操作恢复的解决方案案例)
作业2:
1:创建client 库
在创建表之前 我们需要对root 用户授权 方便我们使用外部工具来创建表
创建user_info 表
进入虚拟机查看数据库表
用户id 前面没有0 (原因 在添加用户id 时 需要加 ’ ’)
完备
在mysql中查询 data 文件夹
增量备份
插入数据
李1 李2 李3
手动刷新 进行日志分割
查看二进制日志文件(data 目录下)
[[email protected] 3306]# mysqlbinlog mysql-bin.000004
分别采用基于时间和基于位置的方式进行增量恢复操作
模拟故障 删除库(误操作恢复的解决方案案例)
1:误操作/删库
采用基于位置的方式恢复使表中只有李1 李3
mysql> source /backup/client-2020-06-29.sql; //恢复完备
2:下图是我们恢复完备后的数据 没有插入数据
查看日志文件
开始使用位置恢复二进制日志(实现跳过误操作恢复案例)
[[email protected] 3306]# mysqlbinlog --stop-position=‘619’
/data/3306/mysql-bin.000003 | mysql -uroot -p
‘619’ : 是我们在不需要的数据位置 意思是数据恢复到 at 619 之前
查看数据库中是否只恢复了 李1
继续恢复李3
使用基于时间方式恢复
完备恢复库
mysql> source /backup/client-2020-06-29.sql;
或者
Mysql -uroot -p client < /backup/client-2020-06-29.sql
恢复完备后的数据库
查看二进制日志
[[email protected] 3306]# mysqlbinlog mysql-bin.000003
基于时间点恢复
[[email protected] 3306]#
mysqlbinlog --stop-datetime=‘20-06-29 9:27:24’ /data/3306/mysql-bin.000003 | mysql -uroot -p
Enter password:
查看数据库中user_info表 是否恢复李1 数据
恢复李3数据
分别完成基于以位置恢复 与时间 恢复所需文件