使用 mysqldump 不通过中间文件进行 BUP MySQL 备份

BUP 是一个不错的基于 git 的备份工具,既免费又易于使用,并通过差异备份节省空间。

你也可以使用 bup 直接通过 mysqldump 备份 MySQL 数据库,而不是先转储到 .sql 文件然后备份该文件。

这可以通过将 mysqldump 输出直接管道到 bup split 来实现:

mysqldump_to_bup.sh
mysqldump [...]| bup -d $BUP_DIR split -n mysqldump.sql

通过使用 -n mysqldump.sql,你告诉 bup 转储创建的文件在备份中应命名为 mysqldump.sql

完整示例:

bup_mysql_backup_example.sh
export BUP_DIR=/var/lib/bup/mysql.bup
export MARIADB_ROOT_PASSWORD=piahaen9ehilei0Ieneirohthue4Iu

bup -d $BUP_DIR init
mysqldump -uroot -p${MARIADB_ROOT_PASSWORD} --all-databases | bup -d $BUP_DIR split -n mysqldump.sql

Check out similar posts by category: Bup