所在的位置: html >> html资源 >> MySQL备份与恢复

MySQL备份与恢复

中科医院曝光 http://www.bdfyy999.com/m/

1、数据备份概述

备份是数据安全的最后一道防线,对于任何数据丢失的场景,备份虽然不一定能恢复百分之百的数据(取决于备份周期),但至少能将损失降到最低。

数据丢失的场景举例:

人为操作失误造成某些数据被误操作

软件BUG造成部分数据或全部数据丢失

硬件故障造成数据库部分数据或全部数据丢失

安全漏洞被入侵数据恶意破坏

1.1衡量备份恢复重要指标

衡量备份恢复有两个重要的指标:

恢复点目标(RPO)

恢复点目标是指数据能恢复到什么程度

恢复时间目标(RTO)

恢复时间目标是指数据恢复需要多长时间

1.2数据库备份分类

数据库备份方式分很多种,从物理与逻辑的角度来看,备份可分为:

物理备份:指对数据库操作系统的物理文件(如数据文件、日志文件等)的备份。物理备份又可以分为脱机备份(冷备份)和联机备份(热备份)。

冷备份:在关闭数据库时进行的备份操作,能够较好地保证数据库的完整性。

热备份:在数据库运行状态中进行操作,这种备份方法依赖于数据库的日志文件。

逻辑备份:指对数据库逻辑组件(如"表"等数据库对象)的备份。

数据库的备份从策略角度来看,备份可分为以下几类:

完全备份:每次对数据进行完整的备份。可以备份整个数据库,包含用户表、系统表、索引、视图和存储过程等所有数据库对象。但它需要花费更多的时间和空间,所以,做一次完全备份的周期要长些。

差异备份:备份那些自从上次完全备份之后被修改过的文件,只备份数据库部分的内容。它比最初的完全备份小,因为只包含自上次完全备份以来所改变的数据库。它的优点是存储和恢复速度快。

增量备份:只有那些在上次完全备份或者增量备份后被修改的文件才会被备份。

2、MySQL备份工具

2.1mysqldump备份工具

MySQL官方提供了Mysqldump逻辑备份工具,它的备份原理是通过协议连接到MySQL数据库,将需要备份的数据查询出来,将查询出的数据转换成对应的insert语句,当我们需要还原这些数据时,只要执行这些insert语句,即可将对应的数据还原。

#mysqldump命令语法:mysqldump[选项]数据库名[表名]备份文件名#数据恢复mysql[选项]数据库名[表名]备份文件名source备份文件名

选项列表:

2.2Xtrabackup备份工具

XtraBackup(PXB)工具是Percona公司用perl语言开发的一个用于MySQL数据库物理热备的备份工具,能够非常快速地备份与恢复mysql数据库,且支持在线热备份(备份时不影响数据读写)。

Xtrabackup中包含两个工具:

xtrabackup:用于热备份innodb,xtradb引擎表的工具,不能备份其他表。

innobackupex:提供了用于myisam(会锁表)和innodb引擎,及混合使用引擎备份的能力。

Xtrabackup的优点:

备份速度快,物理备份可靠

备份过程不会打断正在执行的事务(无需锁表)

能够基于压缩等功能节约磁盘空间和流量

自动备份校验

还原速度快

可以流传,将备份传输到另外一台机器上

在不增加服务器负载的情况备份数据

支持增量备份

#语法:xtrabackup

innobackupex[--defaults-file=#][--backup

--prepare

--copy-back

--move-back][OPTIONS]

Xtrabackup工具备份常用选项:

#下载安装Xtrabackup备份工具[root

localhost~]#wget


转载请注明:http://www.aierlanlan.com/rzgz/1366.html