Home  >  Article  >  Database  >  MySQL 备份与还原详解

MySQL 备份与还原详解

WBOY
WBOYOriginal
2016-06-07 17:30:561021browse

mysqldump 逻辑备份工具,支持所有引擎,MyISAM引擎是温备,InnoDB引擎是热备,备份速度中速,还原速度非常非常慢,但是在实现还

大纲

一、MySQL备份类型

二、MySQL备份都备份什么?

三、MySQL备份工具

四、MySQL备份策略

五、备份准备工作

六、备份策略具体演示

注:系统版本 CentOS6.4 X86_64,MySQL版本 MySQL 5.5.32

相关阅读:

MySQL备份和恢复具体实施

MySQL备份与恢复的三种方法总结

MySQL备份还原(视图、存储过程)

一、MySQL备份类型

1.热备份、温备份、冷备份 (根据服务器状态)

  • 热备份:读、写不受影响;

  • 温备份:仅可以执行读操作;

  • 冷备份:离线备份;读、写操作均中止;

  • 2.物理备份与逻辑备份 (从对象来分)

  • 物理备份:复制数据文件;

  • 逻辑备份:将数据导出至文本文件中;

  • 3.完全备份、增量备份、差异备份 (从数据收集来分)

  • 完全备份:备份全部数据;

  • 增量备份:仅备份上次完全备份或增量备份以后变化的数据;

  • 差异备份:仅备份上次完全备份以来变化的数据;

  • 4.逻辑备份的优点:

  • 在备份速度上两种备份要取决于不同的存储引擎

  • 物理备份的还原速度非常快。但是物理备份的最小力度只能做到表

  • 逻辑备份保存的结构通常都是纯ASCII的,所以我们可以使用文本处理工具来处理

  • 逻辑备份有非常强的兼容性,而物理备份则对版本要求非常高

  • 逻辑备份也对保持数据的安全性有保证

  • 5.逻辑备份的缺点:

  • 逻辑备份要对RDBMS产生额外的压力,而裸备份无压力

  • 逻辑备份的结果可能要比源文件更大。所以很多人都对备份的内容进行压缩

  • 逻辑备份可能会丢失浮点数的精度信息

  • 6.增量备份与差异备份区别

    增量备份与差异备份区别

    说明,差异备份要比增量备份占用的空间大,但恢复时比较方便!但我们一般都用增量备份!

    二、MySQL备份都备份什么?

    我们备份,一般备份以下几个部分:

    1.数据文件

    2.日志文件(比如事务日志,二进制日志)

    3.存储过程,存储函数,触发器

    4.配置文件(十分重要,各个配置文件都要备份)

    5.用于实现数据库备份的脚本,数据库自身清理的Croutab等……

    三、MySQL备份工具

    如下图,

    上面的所有备份工具对比,下面我们就来说一下,常用的备份工具,

    1.Mysql自带的备份工具

  • mysqldump 逻辑备份工具,支持所有引擎,MyISAM引擎是温备,InnoDB引擎是热备,备份速度中速,还原速度非常非常慢,但是在实现还原的时候,具有很大的操作余地。具有很好的弹性。

  • mysqlhotcopy 物理备份工具,但只支持MyISAM引擎,基本上属于冷备的范畴,物理备份,速度比较快。

  • 2.文件系统备份工具

  • cp 冷备份,支持所有引擎,复制命令,只能实现冷备,物理备份。使用归档工具,cp命令,对其进行备份的,备份速度快,还原速度几乎最快,但是灵活度很低,可以跨系统,但是跨平台能力很差。

     

  • lvm 几乎是热备份,支持所有引擎,基于快照(LVM,ZFS)的物理备份,速度非常快,几乎是热备。只影响数据几秒钟而已。但是创建快照的过程本身就影响到了数据库在线的使用,所以备份速度比较快,恢复速度比较快,没有什么弹性空间,而且LVM的限制:不能对多个逻辑卷同一时间进行备份,所以数据文件和事务日志等各种文件必须放在同一个LVM上。而ZFS则非常好的可以在多逻辑卷之间备份。

  • 3.其它工具

  • ibbackup 商业工具 MyISAM是温备份,InnoDB是热备份 ,备份和还原速度都很快,这个软件它的每服务器授权版本是5000美元。

  • xtrabackup 开源工具 MyISAM是温备份,InnoDB是热备份 ,是ibbackup商业工具的替代工具。

  • linux

    Statement:
    The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn