数据库——备份与恢复

概述

  • 备份方法:

热备:在数据库运行中直接备份,对正在运行的数据库没有影响

冷备:数据库停止情况下备份,拷贝相关物理文件

温备:在数据库运行中直接备份,会对当前数据库操作有影响

  • 备份文件:

逻辑备份:可读文本文件

裸文件备份:拷贝数据库的物理文件,恢复时间更短

  • 备份内容:

完全备份

增量备份:在上次完全备份的基础上,对更新的数据进行备份

                  记录当前每个页最后的检查点的LSN

                  如果大于之间完全备份的LSN,则备份该页

日志备份

 

 

冷备

备份frm文件、共享表空间文件、独立表空间文件、重做日志文件

  • 优点:

简单

易恢复

恢复速度快

  • 缺点:

文件大

跨平台问题

 

 

逻辑备份

mysqldump工具

SELECT … INTO OUTFILE / LOAD DATA INFILE(mysqlimport命令行程序)

 

 

 

二进制日志备份与恢复

默认不启用二进制日志

 

热备

ibbackup、XtraBackup工具

  • 工作原理:

1.记录开始时redo log文件检查点的LSN

2.拷贝共享表空间文件以及独立表空间文件

3.记录拷贝完后redo log文件检查点的LSN

4.拷贝备份期间产生的redo log

  • 恢复过程:

1.恢复表空间文件

2.redo log恢复

  • 增量备份:

1.首先完成一个完全备份,并记录检查点的LSN

2.比较表空间每个页的LSN是否大于上次备份的LSN,如果是,备份该页,并记录当前检查点的LSN

 

 

快照备份

所有数据库文件放在同一个文件分区中,对分区执行快照工作

Linux系统下的LVM采用COW创建快照

数据库——备份与恢复

 

 

复制

  • 步骤:

1.主服务器把数据更新记录到二进制日志中

2.服务器把主服务器的二进制日志拷贝到自己的中继日志中(I/O线程)

3.服务器重做中继日志,把更新应用到自己的数据库上(SQL线程)

数据库——备份与恢复

  • 复制的功能:

1.数据分布

2.读取的负载平衡

3.数据库备份

4.高可用性和故障转移

  • 快照+复制的备份架构:

对从服务器上的数据库所在的分区做快照

当主服务器发生故障,恢复从服务器上的快照,再根据二进制日志恢复

数据库——备份与恢复

延时复制:间歇性开启从服务器上的同步功能