xtrabackup支持的压缩算法的变化

发布时间 2023-08-25 11:00:54作者: abce

最近在debain 11中尝试使用xtrabackup version 8.0.32-26备份MySQL的时候,发现debain 11中很难找到qpress的安装包。顺便看了一下xtrabackup支持的压缩算法。

查看xtrabackup version 8.0.32-26的帮助信息:

--compress[=name] Compress individual backup files using the specified
compression algorithm. Supported algorithms are
'quicklz', 'lz4' and 'zstd'. The default algorithm is
'quicklz'. Please note: quicklz is deprecated. Consider
using ZSTD or LZ4.

--decompress Decompresses all files with the .qp extension in a backup
previously made with the --compress option.

为了压缩和解压缩本地或流式备份,Percona XtraBackup使用xbstream:一种同时支持压缩和流式传输动态生成文件二进制文件。
XtraBackup -compress选项使XtraBackup使用支持的压缩算法压缩所有输出数据,包括事务日志文件和元数据文件。解压缩需要使用-compress选项生成的备份中的所有文件,请使用-decompress选项。


版本变化
1.Percona XtraBackup 8.0.30-23在技术预览中添加了ZSTD压缩算法。ZSTD是一种快速无损压缩算法,针对实时压缩场景,提供更好的压缩比。要使用ZSTD压缩算法压缩文件,请将-compress选项设置为zstd。

$xtrabackup -backup -compress=zstd -target-dir=/data/backup

-compress=zstd选项会生成*.zst文件。你可以使用-decompress选项提取这些文件的内容。

此外,还可以使用-compress-zstd-level(=#) 选项指定ZSTD压缩级别,如下所示:

$ xtrabackup -backup -compress -compress-zstd-level=1 -target-dir=/data/backup

 

2.从Percona XtraBackup 8.0.31-24开始,qpress/QuickLZ压缩备份已经过期。Percona建议使用LZ4或ZSTD压缩算法。

 

3.在Percona XtraBackup 8.0.33-28之前,-compress选项默认使用QuickLZ压缩算法。使用-compress时,生成的文件为qpress (*.qp) 格式:

$ xtrabackup -backup -compress -target-dir=/data/backupXtraBackup

XtraBackup生成的每个*.qp文件都是一个qpress归档文件。可以使用支持qpress文件压缩器的-decompress选项来提取这些文件的内容。

 

4.Percona XtraBackup 8.0.34-29不再支持qpress/QuickLZ压缩操作。Zstandard (ZSTD) 压缩算法已移至GA(General Availability)。在该版本中,ZSTD成为-compress选项的默认压缩算法。作为替代的压缩算法是LZ4。

使用-compress选项,默认的压缩算法是ZSTD:

$ xtrabackup -backup -compress -target-dir=/data/backup

使用LZ4压缩算法压缩文件:

$ xtrabackup -backup -compress=lz4 -target-dir=/data/backup

要解压备份中的所有文件,使用-decompress选项:

$ xtrabackup -decompress -target-dir=/data/compressed/

要解压旧版本使用QuickLZ压缩算法的Percona XtraBackup备份,-decompress选项仍支持qpress以实现向后兼容。