Xtrabackup流备份,增量和压缩小结

简介: 【问题背景】1、  针对MySQL文件比较大,需要压缩的数据库。 如500G数据库,xtrabackup备份后文件为500G,备份完成后再压缩打包,相当于文件读写3次。

【问题背景】

1、  针对MySQL文件比较大,需要压缩的数据库。 如500G数据库,xtrabackup备份后文件为500G,备份完成后再压缩打包,相当于文件读写3次。

2、  对于磁盘IO不好的从库,整个过程会持续好几个小时,有时把IO直接搞到100%, 导致从库延时很大。

3、  xtrabackup的xbstream流备份,直接备份后,通过管道直接压缩,这样把原约3次的IO,减少为一次,整个使用时间也变短了。

【适合使用场景】

1、  数据库文件比较大,要压缩的库;导致整个备份时间长,且要求从库延迟不能太大的库。

【线上使用示例】

主站有一组机器已测试通过,简单对比:

1、  xtrabackup全量备份,不压缩,直接tar包170G, 用时80分钟; xtrabackup流备份+libz2压缩,文件大小46G, 用时40分钟。

2、  备份过程中两个的IO util对比:

常规备份,不压缩:

Xbstream备份+压缩

【基本使用原理】

1 备份步骤

由于xbstream+压缩备份后,无备份目录,xtrabackup可指定--extra-lsndir目录,此目录只存放此次备份的xtrabackup_checkpoints文件;后面的增量备份时,--incremental-basedir就指向前一日的extra-lsndir目录便可。

1)  全量备份命令:

innobackupex --user=dump  --password=xxx  --host=127.0.0.1  --slave-info --stream=xbstream --extra-lsndir="$lsndir"  $baseDir 2>>"$backupLog" | lbzip2 -kv -n 10 > "$backup_file" 2>>"$backupLog"

2) 增量备份命令:

innobackupex --user=dump  --password=xxx  --host=127.0.0.1  --slave-info --stream=xbstream --extra-lsndir="$lsndir"  --incremental  --incremental-basedir="$last_lsndir"  $baseDir 2>>"$backupLog" | lbzip2 -kv -n 10 > "$backup_file" 2>>"$backupLog"

2、  还原步骤

备份后生成的为压缩了的文件,所以要解压,再用xbstream打开流体文件(较之原来还原,多了此步骤)。

1)  解压压缩的文件:lbzip2 -dkv -n 10 2013-07-14_bak_full.bz2

2)  解压液体文件为目录: xbstream -x < 2013-07-14_bak_full -C /work/bak/2013-07-14_full/

目录
相关文章
|
关系型数据库 MySQL 网络安全
|
监控 调度 开发工具
IO神器blktrace使用介绍
## 前言 1. blktrace的作者正是block io的maintainer,开发此工具,可以更好的追踪IO的过程。 2. blktrace 结合btt可以统计一个IO是在调度队列停留的时间长,还是在硬件上消耗的时间长,利用这个工具可以协助分析和优化问题。 ## blktrace的原理 一个I/O请求的处理过程,可以梳理为这样一张简单的图: ![](http://image
19872 0
|
关系型数据库 MySQL 搜索推荐
mysql point类型的简单使用
什么是point类型数据?举个例子如下:POINT(123.462202 41.804471) 首先建立一个表: DROP TABLE IF EXISTS `tb_point`; CREATE TABLE `tb_point` ( `timesta...
3473 0
|
3月前
|
机器学习/深度学习 负载均衡 C++
MoR vs MoE架构对比:更少参数、更快推理的大模型新选择
本文将深入分析递归混合(MoR)与专家混合(MoE)两种架构在大语言模型中的技术特性差异,探讨各自的适用场景和实现机制,并从架构设计、参数效率、推理性能等多个维度进行全面对比。
259 0
MoR vs MoE架构对比:更少参数、更快推理的大模型新选择
|
8月前
|
存储 Java 关系型数据库
ssm064农产品仓库管理系统系统(文档+源码)_kaic
农产品仓库管理系统基于现代经济快速发展和信息化技术的升级,采用SSM框架、Java语言及Mysql数据库开发。系统旨在帮助管理者高效处理大量数据信息,提升事务处理效率,实现数据管理的科学化与规范化。该系统涵盖物资基础数据管理、出入库订单管理等功能,界面简洁美观,符合用户操作习惯,并提供数据安全解决方案,确保信息的安全性和可靠性。通过自动化和集中处理,系统显著提高了仓库管理的效率和准确性。
|
存储 关系型数据库 MySQL
利用Xtrabackup进行mysql增量备份和全量备份
利用Xtrabackup进行mysql增量备份和全量备份
1193 0
|
JSON Cloud Native Java
通过 Higress Wasm 插件 3 倍性能实现 Spring-cloud-gateway 功能
通过 Higress Wasm 插件 3 倍性能实现 Spring-cloud-gateway 功能
495 86
|
存储 SQL 缓存
一文带你了解MySQL之Adaptive Hash Index
在InnoDB体系架构图的内存结构中,还有一块区域名为:Adaptive Hash Index,翻译成中文:自适应哈希索引,缩写:AHI,它是一个纯内存结构,我们今天就来了解它。
2563 0
|
缓存 NoSQL 中间件
用golang搭建springboot风格项目结构 gin+gorm
最近学了学go语言,想练习一下用go开发web项目,项目结构弄个什么样呢。