layout: post
title: Mysql数据库备份——备份与还原的概念
date: 2018-02-23
tags: [“Mariadb”,”软件服务”]
一、备份的概念
1、备份类型
完全备份:整个数据集
部分备份:只备份数据子集,如部分库或表
2、备份的方法
完全备份:备份真个数据库
增量备份:仅备份最近一次完全备份或增量备份(如果存在增量)以来变化的数据,备份较快,还原复杂
差异备份:仅备份最近一次完全备份以来变化的数据,备份较慢,还原简单
注意:Mysql数据库的备份依赖于数据库运行中产生的binlog日志,所以,为了安全起见,我们在生产中应该将数据库和binlog日志分在不同的磁盘中进行保存,以防止一块磁盘损坏数据是可以恢复的。
3、冷、温、热备份的概念
冷备:读写操作均不可进行
温备:读操作可执行;但写操作不可执行
热备:读写操作均可执行
注意:MyISAM:温备,不支持热备(因其不支持事物,当备份数据时会锁定所有表);InnoDB: 都支持
4、物理和逻辑备份
物理备份:直接复制数据文件进行备份,与存储引擎有关,占用较多的空间,速度快
逻辑备份:从数据库中”导出”数据另存而进行的备份,与存储引擎无关,占用空间少,速度慢,可能丢失精度
二、数据库的备份工具与方法
1、 mysqldump+复制binlog
mysqldump:完全备份
复制binlog中指定时间范围的event:增量备份
2、LVM快照+复制binlog
LVM快照:使用cp或tar等做物理备份;完全备份
复制binlog中指定时间范围的event:增量备份
3、xtrabackup备份工具:由Percona提供支持对InnoDB做热备(物理备份)的工具,支持完全备份、增量备份(主流的备份软件)可通过https://www.percona.com获取下载链接
4、MariaDB Backup: 从MariaDB 10.1.26开始集成,基于Percona XtraBackup 2.3.8实现
5、mysqlbackup:热备份, MySQL Enterprise Edition组件