备份与恢复概述
按备份方法分:
hot backup 热备、在线备份
数据库运行中直接备份,对正在运行的数据库没有任何影响。
cold backup 冷备、离线备份
最为简单,一般只需要拷贝相关的数据库物理文件即可。
优点:备份简单、恢复简单、恢复速度快、备份文件易于在不同操作系统和MySQL版本上恢复
缺点:备份文件大、不总是可以轻易跨平台。如大小写敏感、浮点数格式等。
warm backup 温备
数据库运行时进行备份,但是会对当前数据库的操作有影响,如加一个全局锁以保证数据的一致性。
按备份后文件内容分:
逻辑备份
备份后的文件内容时可读的,通常是文本文件,内容通常是SQL语句,或表内的数据数据,好处是可以看到导出文件的内容。适用于数据库的升级、迁移等,恢复所需要的时间往往较长。
裸文件备份
拷贝数据库的物理文件,数据库既可以处于运行状态,也可以处于停止状态。恢复时间短。
按备份数据的内容分:
完全备份
对数据库进行完整的备份。
增量备份
在上次完全备份的基础上,对更新的数据进行备份,官方并未提供增量备份的方法。
日志备份
主要是二进制日志的备份,通过对一个完全备份进行二进制日志的重做来完成数据库的point-in-time的恢复工作。
复制
复制的工作原理
异步同步,并非完全的主从同步。
- 主服务器把数据更新记录到二进制日志中。
- 从服务器把主服务器的二进制日志拷贝到自己的中继日志(relay log)中。
- 从服务器重做中继日志中的事件,把更新应用到自己的数据库上。
复制不仅限于备份
数据分布
不同数据中心之间实现数据拷贝。
读取的负载均衡
读写分离。
数据库备份
从服务器不是备份,不能完全代替备份。
高可用性和故障转移
减少故障的停机时间和恢复时间。