MySQL逻辑物理备份测试

MySQL逻辑物理备份测试

目录

逻辑备份
mysqldump普通备份
mysqlpump并行备份
mysqlpump压缩并行备份
mydumper并行备份
mydumper并行压缩备份
小结
物理备份
xtrabackup压缩备份
xtrabackup并行压缩备份
innobackupex并行压缩备份
innobackupex xbstream流式备份
innobackupex xbstream流式压缩并行备份
innobackupex tar流式备份
innobackupex tar流式压缩备份
innobackupex tar流式压缩并行备份
小结

逻辑备份
mysqldump普通备份

<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">time mysqldump -uadmin -padmin -h127.0.0.1 -p3306 --routines --set-gtid-purged = off --triggers --events --single-transaction --master-data = 2 --all-databases> /data/compressed/backup.sql</font></font>
real 0m19.349s
user 0m3.879s
sys 0m0.951s
du -sh /data/compressed/ && rm -rf /data/compressed/*

362m /数据/压缩/

mysqlpump并行备份

<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">time mysqlpump -uadmin -padmin -h127.0.0.1 -p3306 --set-gtid-purged = off --triggers --default-parallelism = 4 --routines --events --single-transaction --all-databases> /data/compressed/backup.sql</font></font>

真正的0m7.714s
用户0m7.149s
sys 0m0.611s

du -sh /data/compressed/

213m /数据/压缩/

时间lz4_decompress /data/compressed/backup.sql /data/backup.sql
ll -h /data/backup.sql
-rw -r - r-- 1 root root 363m sep 16 19:53 /data/backup.sql

mydumper并行备份

<font style="vertical-align: inherit;"><font style="vertical-align: inherit;">time mydumper -u admin -p admin -h 127.0.0.1 -p 3306 --routines --triggers -t 4 --events -o / data / compressed</font></font>

真正的0m7.582s
用户0m1.810s
sys 0m0.715s

du -sh /data/compressed/

119米/数据/压缩/

注意

mydumper备份mysql gtid单独存放在元文件里

cat / data / compressed / metadata
start dump:2018-09-16 17:33:32
show master status:
log:mysql-bin.000002
pos:47557983
gtid:898db7fe-f80a-11e7-b8d4-fa163efd7144:1-75

完成转储:2018-09-16 17:33:45

小结

对2.3g datadir分别进行逻辑备份,占用时间最短的是mysqlpump并行备份(7s);占用空间最小的是mydumper并行压缩备份(119m),对于数据库较小可以采用mysqldpump或mydumper并行备份,备份速度都要优于mysqldump的。
物理备份
xtrabackup --version
xtrabackup版本2.4.8

ll / usr / bin / innobackupex lrwxrwxrwx
。1 root root 10 jan 22 2018 / usr / bin / innobackupex - > xtrabackup
innobackupex是xtrabackup的软链接,在percona-xtrabackup8.0版本中被移除

du -sh /opt/mysql/data/3306/
2.3g / opt / mysql / data / 3306 /

xtrabackup压缩备份
?
1
time xtrabackup --defaults-file=/opt/mysql/etc/3306/my.cnf  -uadmin -padmin --socket=/opt/mysql/data/3306/mysqld.sock   --backup --compress --target-dir=/data/compressed/
真正的0m44.597s
用户0m4.905s
sys 0m1.562s

du -sh /data/compressed/
675m /数据/压缩/

yum -y install qpress
time xtrabackup --decompress --target-dir = / data / compressed /
real 0m28.961s
user 0m4.767s
sys 0m5.995s
xtrabackup并行压缩备份
?
1
time xtrabackup --defaults-file=/opt/mysql/etc/3306/my.cnf  -uadmin -padmin --socket=/opt/mysql/data/3306/mysqld.sock   --backup --compress --compress-threads=4 --parallel=4 --target-dir=/data/compressed/

真正的0m31.813s
用户0m5.159s
sys 0m1.803s

du -sh /data/compressed/

673m /数据/压缩/

time xtrabackup --decompress --parallel=4 --target-dir=/data/compressed/

真正的0m24.684s
用户0m5.384s
sys 0m8.028s

innobackupex并行压缩备份
?
1
time /usr/bin/innobackupex  --defaults-file=/opt/mysql/etc/3306/my.cnf  -uadmin -padmin --socket=/opt/mysql/data/3306/mysqld.sock    --compress --compress-threads=4 --parallel=4  /data/compressed/

真正的0m29.864s
用户0m4.680s
sys 0m1.460s

innobackupex xbstream流式备份
mkdir -p /data/backup<font></font>
time innobackupex --defaults-file=/opt/mysql/etc/3306/my.cnf  -uadmin -padmin --socket=/opt/mysql/data/3306/mysqld.sock  --stream=xbstream /data/backup/ > /data/backup/backup.xbstream

真正的0m42.509s
用户0m0.947s
sys 0m2.642s

du -ch /data/backup/

1.9g / data / backup /
总共1.9g

time xbstream -x</data/backup/backup.xbstream -c /backup

真正的0m28.451s
用户0m0.308s
sys 0m13.889s

innobackupex xbstream流式压缩并行备份

time innobackupex --defaults-file=/opt/mysql/etc/3306/my.cnf  -uadmin -padmin --socket=/opt/mysql/data/3306/mysqld.sock  --stream=xbstream --compress   --compress-threads=4  --parallel=4  /data/backup/ > /data/backup/backup.xbstream

真正的0m35.992s
用户0m4.988s
sys 0m1.909s

du -sh /data/backup/

672m / data / backup /
innobackupex tar流式备份

time innobackupex  --defaults-file=/opt/mysql/etc/3306/my.cnf  -uadmin -padmin --socket=/opt/mysql/data/3306/mysqld.sock --stream=tar /data/backup/ > /data/backup/out.tar

实际0m40.338s
用户0m0.641s
sys 0m2.726s
du -sh /data/backup/
1.9g / data / backup /

innobackupex tar流式压缩备份

time innobackupex  --defaults-file=/opt/mysql/etc/3306/my.cnf  -uadmin -padmin --socket=/opt/mysql/data/3306/mysqld.sock --stream=tar /data/backup/  | gzip > /data/backup/out.tar.gz

真正的1m47.964s
用户1m19.120s
sys 0m2.883s

du -ch /data/backup/
476m / data / backup /
innobackupex tar流式压缩并行备份
并行备份无效
time innobackupex  --defaults-file=/opt/mysql/etc/3306/my.cnf   --parallel=4   -uadmin -padmin --socket=/opt/mysql/data/3306/mysqld.sock --stream=tar /data/backup/  | gzip > /data/backup/out.tar.gz

真正的1m50.192s
用户1m18.925s
sys 0m2.768s

xtrabackup:使用o_direct
innodb:池数:1
xtrabackup:warning: - “并行”选项在以“ tar ”格式流式传输时没有任何效果。您可以使用‘xbstream‘格式。

小结
对2.3g datadir分别进行物理备份,备份占用时间最短的是innobackupex压缩并行备份(30s)和xtrabackup压缩并行备份(31s),其次是innobackupex xbstream流式压缩并行备份(35s);备份占用空间最小的是innobackupex tar流式压缩备份(476m),innobackupex tar流式备份不支持并行备份

若更在意备份时间,推荐xtrabackup / innobackupex压缩并行备份,若更在意备份空间占用大小,推荐innobackupex tar流式压缩备份
数据量较大适合物理备份

参考
percona xtrabackup - 文档

原文地址:https://blog.51cto.com/14354846/2408068

时间: 2024-10-08 19:52:27

MySQL逻辑物理备份测试的相关文章

脚本-每3天对数据库目录/var/lib/mysql做物理备份 把数据备份到系统/opt/dbbak目录

每3天对数据库目录/var/lib/mysql做物理备份 把数据备份到系统/opt/dbbak目录 #!/bin/bash DAY=`date+%Y-%m-%d` SIZE=`du-sh /var/lib/mysql` cd/opt/dbbak  2> /dev/null  || mkdir /opt/dbbak echo"Date: $DAY" > /opt/dbbak/dbinfo.txt echo"Total Database Size: $SIZE&quo

使用 xtrabackup 进行MySQL数据库物理备份

0. xtrabackup的功能 能实现的功能: 非阻塞备份innodb等事务引擎数据库. 备份myisam表会阻塞(需要锁). 支持全备.增量备份.压缩备份. 快速增量备份(xtradb,原理类似于oracle:tracking 上次备份之后发生修改的page.). percona支持归档redo log的备份. percona5.6+支持轻量级的backup-lock替代原来重量级的FTWRL,此时即使备份非事务引擎表也不会阻塞innodb的DML语句了. 支持加密备份.流备份(备份到远程机

MySQL优化之——备份和恢复

转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46766919 备份 逻辑备份方法 使用MYSQLDUMP命令备份 MYSQLDUMP是MYSQL提供的一个非常有用的数据库备份工具.mysqldump命令执行时将数据库备份成一个文本文件,该文件中实际上包含了多个CREATE 和INSERT语句,使用这些语句可以重新创建表和插入数据 MYSQLDUMP的语法和选项 mysqldump -u user -p pwd -h host

我的MYSQL学习心得 备份和恢复(详细)

备份 逻辑备份方法 使用MYSQLDUMP命令备份 MYSQLDUMP是MYSQL提供的一个非常有用的数据库备份工具.mysqldump命令执行时将数据库备份成一个文本文件, 该文件中实际上包含了多个CREATE 和INSERT语句,使用这些语句可以重新创建表和插入数据 MYSQLDUMP的语法和选项 mysqldump -u user -p pwd -h host dbname[tbname,[tbname...]]>filename.sql 选项/Option 作用/Action Perfo

mysql之使用xtrabackup进行物理备份、恢复、在线克隆从库、在线重做主从

注:图片来自<深入浅出MySQL 数据库开发 优化与管理维护 第2版> 物理备份和恢复 1.冷备份:停掉mysql再备份,一般很少用,因为很多应用不允许长时间停机,停机备份的可以直接CP数据库的数据目录,在进行恢复前,停掉mysql,然后把数据目录覆盖掉,再重启mysql. 2.热备份 Myisam存储引擎 可以使用mysqlhotcopy工具,如果此工具无法使用时,可以手工使用:flush tables with read lock;手动加读锁,然后复制mysiam表的文件做热备. inno

XtraBackup物理备份(未测试)

XtraBackup物理备份 Percona XtraBackup是世界上唯一的开源,免费的MySQL热备份软件,为InnoDB和XtraDB 数据库执行非阻塞备份.使用Percona XtraBackup,可以实现以下优势: 快速可靠地完成的备份 备份期间的不间断事务处理 节省磁盘空间和网络带宽 自动备份验证 创建热InnoDB备份,而不暂停数据库 对MySQL进行增量备份 将压缩的MySQL备份压缩到另一个服务器 在MySQL服务器之间移动表 轻松创建新的MySQL主从 备份MySQL,而不

XtraBackup物理备份 阿里云的Mysql备份方案

XtraBackup物理备份 Percona XtraBackup是世界上唯一的开源,免费的MySQL热备份软件,为InnoDB和XtraDB 数据库执行非阻塞备份.使用Percona XtraBackup,可以实现以下优势: 快速可靠地完成的备份 备份期间的不间断事务处理 节省磁盘空间和网络带宽 自动备份验证 创建热InnoDB备份,而不暂停数据库 对MySQL进行增量备份 将压缩的MySQL备份压缩到另一个服务器 在MySQL服务器之间移动表 轻松创建新的MySQL主从 备份MySQL,而不

MySQL生产库之Xtrabackup物理备份

在生产环境中,我们一般采取mysqldump全库备份,但这对于大型数据库是不可用的,因为mysqldump是逻辑备份,备份和恢复的效率缓慢,根据个人经验给出一个临界值的话,500G以下的数据库可以用mysqldump来进行全库备份,500G以上的数据库则需要物理全库备份,甚至是增量备份.Xtrabackup是物理备份,其备份速度也因其物理特性远超逻辑备份的速度,而且Xtrabackup就是为了逻辑备份而生的,接下来演示一下Xtrabackup是如何完成对数据库的全备和增备的. 一:首先我们安装x

mysql物理备份工具Xtrabackup安装配置

mysql物理备份工具Xtrabackup安装配置 1????Xtrabackup工具介绍 Xtrabackup是一个对InnoDB做物理数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品. Xtrabackup有两个主要的工具:xtrabackup.innobackupex (1)xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表. (2)innobackupex是用来备份非Inn