Mysql备份恢复介绍
一、Mysql备份的分类
按照备份后产生的副本文件是否可以编辑,可分为逻辑备份、物理备份。
1.物理备份:
物理备份产生的数据副本都是二进制文件,常常不可编辑,例如数据库的二进制日志。
适用:
物理备份使用于大数据量的备份,比如你有百G级、TB级的数据,那你就适合使用物理备份。
备份方法:
- 文件系统命令:cp,scp,tar,rsync;
- Mysql相关备份软件;系统快照snapshot;
2.逻辑备份(将数据导出至文本文件中):
逻辑备份就是把数据库的结构定义语句,数据内容的插入语句,全部存储下来。然后恢复的时候,在另一个mysql服务器执行这些语句,就可以创建另一个与之前一样的数据库了。备份后,数据库管理员通常可以直接查看和编辑副本文件中的内容。
适用:
这种比较适合数据量少的数据库。
备份方法:
- 如,使用mysqldump等程序可以把对远程/本地数据库进行逻辑备份。
- select … into outfile 可以把数据进行逻辑备份,但备份文件只 能存储在mysql-server的机器上;
二、Mysql一般备份以下几个部分:
- 数据文件
- 日志文件(比如事务日志,二进制日志)
- 存储过程,存储函数,触发器
- 配置文件(十分重要,各个配置文件都要备份)
- 用于实现数据库备份的脚本
三、Mysql备份工具简介
mysqldump (单线程) / mysqlpump (多线程)
mysql服务自带的备份工具,是一种逻辑备份工具,它支持以下方式备份:
完全、部分备份;
InnoDB:热备;
MyISAM:温备;mydumper 开源,是mysqldump 的一个衍生,速度在俩者之间。
cp / tar 物理拷贝
innobackup[收费] / xtrabackup[免费]
官方mysql enterprise backup 备份软件,收费。
四、Mysql备份方案的选型
直接拷贝数据库文件(文件系统备份工具cp)(适合小型数据库,是最可靠的)
mysqldump 备份数据库(完全备份+增量备份,速度比较慢,适合中小型数据库)
Xtrabackup&&lvm 快照从物理角度实现几乎热备的完全备份,配合二进制日志备份实现增量备份,速度快适合大型数据库。