1.1. 前言
对数据库数据进行备份都是日常的工作(虽然都是自动做的),备份中有一项必备的那就是binglog了。在工作中一般这些备份都会保留一段时间后归档。时间长了归档的数据将会非常大。这时候我们就需要考虑如何存储这些归档的binlog。
1.2. 思路
将需要归档的 binlog 使用 mysqlbinlog 分析到其他文件,再将文件给压缩。这样空间就能省出好多空间来了。
1.3. 操作步骤
假设这里我们需要归档的binlog文件名是mysql-bin.000025。
查看mysql-bin.000025文件大小。
1
2
|
ll –h
–rw–r——– 1 mysql mysql 700M Apr 2 22:00 mysql–bin.000025
|
使用mysqlbinlog将生成恢复文件
1
|
/usr/local/mysql/bin/mysqlbinlog mysql–bin.000025 > mysql–recover.000025
|
查看mysql-recover.000025文件大小
1
2
|
ll –h mysql–recover.000025
–rw–r—r— 1 root root 954M Apr 2 23:53 mysql–recover.000025
|
压缩mysql-recover.000025文件
1
2
3
|
tar –jcf mysql–recover.000025.tar.bz2 mysql–recover.000025
ll –h mysql–recover.000025.tar.bz2
–rw–r—r— 1 root root 24M Apr 3 00:10 mysql–recover.000025.tar.bz2
|
可以看到压缩后的数据就变成了24M,这比700M的binlog要小30多倍。也可以使用xz去压缩,他的压缩比率比bz2要高好多。如下:
1
2
|
ll –h
–rw–r—r— 1 root root 14M Apr 3 00:15 mysql–recover.000025.tar.xz
|
文章转载来自:trustauth.cn