备份一个约250G的mysql实例【xtrabackup备份方案对比】

备份一个约250G的mysql实例

A. 使用xtrabackup备份加gzip单线程压缩

time innobackupex --user=test --password=test  --socket=/home/mysqld.sock  --slave-info --defaults-file=/etc/mysql/my.cnf  --stream=tar /home/backup | gzip > mysql-backup.tgz

real    271m15.984s
user    275m44.840s
sys     6m34.393s

总结:

备份时间: 6小时30分钟以上
占用空间: 87G
占用CPU:  有单个core的cpu被打满

缺点:备份时间长,单个core的cpu被打满,恢复的时候解压会比较耗时,由于备份时间窗比较长所以apply-log的时间也相对会变长
优点:压缩比例高

B. 使用xtrabackup自带的并发压缩

time innobackupex --user=test --password=test --socket=/home/mysqld.sock --slave-info  --parallel=16 --compress --compress-threads 16 --defaults-file=/etc/mysql/my.cnf    --stream=xbstream  /home/backup > mysql-backup.xbstream

real    8m56.112s
user    36m18.179s
sys     4m1.395s

总结:

备份时间:  10分钟左右
占用空间:  123G 
占用CPU:  没有任何core的cpu被打满

缺点:压缩比不高,恢复时需要解两次包
优点:备份速度快、cpu core不会被打满,恢复时解压耗时短,由于备份时间窗比较短所以apply-log也是很快会完成

恢复方法:

1.解开xbstream文件
time xbstream -C /home/data/backup/  -x -v  < mysql-backup.xbstream

real    8m3.373s
user    2m49.465s
sys     3m31.498s

2.解压压缩的qp文件

cd  /home/data/backup/

time innobackupex --decompress   --parallel=32  ./
real    6m24.422s
user    17m45.832s
sys     15m17.286s

3.apply log

cd  /home/data/backup/

innobackupex --apply-log ./

4.copy back

cd  /home/data/backup/

innobackupex --copy-back --defaults-file=/etc/mysql/my.cnf  ./

这一步如果 用copy-back的话会比较花时间,有一个省时间的办法是 直接把apply后的数据mv 到需要还原的data目录下(瞬移)

比如:cd /home/data/backup/  && mv ./* /home/mysqlrecover/data/

还原时间:  25分钟左右

牺牲点空间换时间还是值得的....

时间: 2024-11-07 18:27:25

备份一个约250G的mysql实例【xtrabackup备份方案对比】的相关文章

MySQL之Xtrabackup备份恢复数据库-简介

一.Xtrabackup介绍 1.Xtrabackup是什么 Xtrabackup 是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品. Xtrabackup 有两个主要的工具:xtrabackup.innobackupex xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表. innobackupex是参考了InnoDB Hotbackup的innoback脚

mysql之Xtrabackup备份及增量备份

Xtrabackup 是由percona提供的mysql数据库备份工具,是一个开源的工具,能够对innodb和xtradb数据库进行热备和增量备份,对于MyISAM, 仅支持到温备,对MyISAM使用增量备份时,其实是完全备份.Xtrabackup使用简单,功能强大. 官方地址:http://www.percona.com/software/percona-xtrabackup/ 安装: percona-toolkit-2.2.17-1.noarch.rpm percona-xtrabackup

Mysql使用xtrabackup备份失败处理

在生产环境中使用的是xtrabackup,对mysql进行备份,每天0点开始备份,周日是全量备份,其他时间是基于周日做的增量备份,通过脚本实现,每天备份完成后会发送短信,突然有一天,备份全部失败,手动执行也无法备份,报错的日志如下: /usr/bin/xtrabackup version 2.4.8 based on MySQL server 5.7.13 Linux (x86_64) (revision id: 97330f7) incremental backup from 70857650

数据库中快速备份一个表的数据,或者只备份表结构

将表结构和数据一块块备份 select * into 备份表名称 from 源表名称 只备份表结构 select * into 备份表名称 from 源表名称 where 1 < 1  (1<1 是指错误条件 查不到数据往备份表里添加自然就只备份表结构了)

MySQL的xtrabackup备份

################################################################################## ######   ######恢复数据库的时候,需要将备份的日志应用备份的文件中去,让后才能进行恢复 ######备份:innobackupex --user=root --password=banma --defaults-file=/etc/my.cnf  --database=testinnodb  /tmp/data/ ##

Mysql中-Xtrabackup备份和恢复应用

关于Xtrabackup(又或innobackupex)的介绍,详细参考官方文档 Xtrabackup安装指南 文件准备 [[email protected] ~]# cd percona-xtrabackup/ [[email protected] percona-xtrabackup]# ls libev-4.15-1.el6.rf.x86_64.rpm percona-release-0.1-4.noarch.rpm percona-xtrabackup-24-2.4.4-1.el7.x8

mysql使用xtrabackup备份

mysql扩展:xtrabackup备份和做主从

使用xtrabackup链接:http://pan.baidu.com/s/1miFpS9M 密码:86dx 链接:http://pan.baidu.com/s/1o7GXBBW 密码:ue2f xtrabackup 只能备份引擎为innodb的数据 后来innobackeupex 则可以备份mysiam (使用mysqldump 备份大量数据时会很慢,使用xtrabackup则很快,且把所有数据文件都会备份ls /data/mysql) 备份前保证mysql服务开启 mysql 的数据目录我的

Percona XtraBackup 备份还原篇

Percona XtraBackup 安装介绍篇已经对Percona XtraBackup的功能和安装做了比较详细的介绍,那么本篇我们直接进入主题,如何使用XtraBackup做备份.还原,下面主要介绍XtraBackup备份还原操作的细节和场景,疏漏之处难免存在,如有不足,敬请指出.本篇暂时不做原理介绍,后续篇章"Percona XtraBackup 原理分析篇"再做介绍.   XtraBackup完整备份   备份的权限 使用XtraBack做备份,需要连接到数据库服务器并在服务器