MySQL 的高效备份利器,非XtraBackup莫属。由 Percona 出品,热备能力挺强,支持常见的 InnoDB 和 MyISAM,还有他们自己改造的 XtraDB。热备的好处你懂的,不影响线上服务,备份还能悄悄搞定,适合业务繁忙的场景。
备份方式也比较灵活,支持增量备份,只保存变更数据,既快又省空间。而且能并行多个表空间,效率高。最方便的是,它跟 MySQL 和 MariaDB 都兼容得挺好,搬到不同环境里也没啥压力。
安装也不复杂,从 Percona
官网下载对应的安装包,解压后配置下 PATH
环境变量就行。还有一个点要注意,执行 innobackupex
这类脚本时,如果报错找不到 DBD::mysql
,记得装下 perl-DBD-Mysql
。
备份命令就两种模式,--backup
是备份,--prepare
是还原前的准备。像这样:
xtrabackup --defaults-file=/data/mysqldata/3307/my.cnf --backup --target-dir=/data/mysqldata/backup/20250622
你要是还习惯用 innobackupex
,它其实就是个 Perl 包装脚本,底层也是调的 xtrabackup
。
如果你平时和数据库打交道多,尤其是线上业务比较重,XtraBackup 真的可以用起来,备份稳又快,还能配合 binlog 做增量,恢复也方便。