一、Mysql数据库故障类型和数据库备类型

1、故障类型  

 人为:权限过大误操作数据丢失

 程序故障:Mysql程序发生故障无法使用

 磁盘故障数据丢失:Read1或者Read5避免物理磁盘故障数据丢失

 不可抗力自然灾害:地震、海啸可以使用异地灾备技术避免

2、Mysql数据库备份类型  

 物理备份:对Mysql数据库的数据文件日志文件备份

 逻辑备份:对Mysql数据库数据或者指定表逻辑备份

二、备份策略

1、完整备份  

 简称全量备份

 第一次使用完整备份

 备份时间长占用磁盘空间资源高

2、差异备份  

 备份完整备份后修改的数据所有文件

3、增量备份  

 只备份上次备份完后修改的数据

 备份时间短速度快占用磁盘空间小

三、物理备份的类型  

1、冷备份

 停止Mysql数据库服务对数据库数据位置备份

2、热备份  

 实时自动备份数据

 主从复制

 Mysql组复制

 Mysql的MMM高可用

 Mysql的MHA  

3、温和备份  

 最大限度保证数据备份的完整性

 在备份数据进制用户写入允许读取

四、Mysql数据库备份的工具  

1、mysqldump

 mysql系统自带的备份工具

 数据库数据量小选择使用的备份工具

 可以备份所有数据库、备份指定数据库、备份指定库中的指定表

2、二进制日志备份  

 需要开启Mysql的二进制日志

 二进制日志记录对数据库所有操作记录

 通过二进制恢复数据

 恢复数据灵活性强

3、第三方提供备份工具

 xtrabackup:使用C语言开发工具备份InnoDB数据库引擎

 innobackupex:使用perl脚本开发备份MyISAM数据库引擎

 xbstream:将数据压缩后备份

五、使用mydqldump选项  

1、备份数据库  

 --databases

2、备份所有的数据库  

 --all-databases

六、使用 mysqldump 配置完整备份

1、登录 Mysql 数据库创建数据库 data,数据库中创建 student 表设置表结构

mysql数据备份恢复,完全备份和增量备份_数据

mysql数据备份恢复,完全备份和增量备份_数据库_02

mysql数据备份恢复,完全备份和增量备份_数据_03

2、表中插入数据

mysql数据备份恢复,完全备份和增量备份_备份恢复_04

3、备份data数据库中的 student表

mysql数据备份恢复,完全备份和增量备份_备份恢复_05

4、备份data数据库

mysql数据备份恢复,完全备份和增量备份_二进制日志_06

5、备份所有数据库

mysql数据备份恢复,完全备份和增量备份_备份恢复_07

七、模拟数据库被误删除恢复数据

1、删除data数据库

mysql数据备份恢复,完全备份和增量备份_备份恢复_08

2、恢复被误删除的data数据库

mysql数据备份恢复,完全备份和增量备份_二进制日志_09

3、模拟data数据库中的student表被删除

mysql数据备份恢复,完全备份和增量备份_数据_10

mysql数据备份恢复,完全备份和增量备份_数据_11

4、恢复误删除的student表

mysql数据备份恢复,完全备份和增量备份_数据_12

八、配置增量备份

1、修改 mysql 主配置文件支持二进制日志功能

mysql数据备份恢复,完全备份和增量备份_二进制日志_13

(加一条)

mysql数据备份恢复,完全备份和增量备份_数据_14

2、重启 mysql 服务

mysql数据备份恢复,完全备份和增量备份_数据_15

3、配置日志切割

mysql数据备份恢复,完全备份和增量备份_数据_16

4、插入新的数据在数据库中

mysql数据备份恢复,完全备份和增量备份_二进制日志_17

5、结束数据插入配置日志切割

mysql数据备份恢复,完全备份和增量备份_数据_18

6、备份二进制日志

mysql数据备份恢复,完全备份和增量备份_二进制日志_19

7、查看二进制日志

mysql数据备份恢复,完全备份和增量备份_数据库_20

8、模拟数据丢失

mysql数据备份恢复,完全备份和增量备份_数据_21

mysql数据备份恢复,完全备份和增量备份_数据_22

9、通过二进制日志恢复误删除数据

mysql数据备份恢复,完全备份和增量备份_数据库_23

九、配置使用二进制日志基于位置恢复误删除数据

1、模拟数据被误删除

mysql数据备份恢复,完全备份和增量备份_数据_24

2、基于结束位置和起始位置恢复数据

mysql数据备份恢复,完全备份和增量备份_二进制日志_25

mysql数据备份恢复,完全备份和增量备份_数据库_26

十、配置使用二进制日志基于时间恢复数据

1、模拟数据丢失

mysql数据备份恢复,完全备份和增量备份_备份恢复_27

2、基于起始和结束时间范围内恢复数据

mysql数据备份恢复,完全备份和增量备份_数据_28