如何在mysql中使用mysqlpump备份

来源:这里教程网 时间:2026-02-28 20:17:59 作者:

在 MySQL 中,mysqlpump 是一个用于逻辑备份的命令行工具,从 MySQL 5.7 版本开始提供,是

mysqldump
的增强替代工具,支持并行备份、更细粒度的对象控制以及压缩功能。下面介绍如何使用 mysqlpump 进行数据库备份。

1. 基本语法与简单备份

mysqlpump 的基本语法如下:

mysqlpump [options] [db_name [tbl_name ...]]

例如,备份单个数据库:

mysqlpump -u root -p mydatabase > mydatabase_backup.sql

如果需要备份多个数据库,可以列出它们:

mysqlpump -u root -p db1 db2 > multi_db_backup.sql

要备份所有数据库(包括系统库),使用

--all-databases
选项:

mysqlpump -u root -p --all-databases > full_backup.sql

2. 并行备份提升性能

mysqlpump 支持多线程并行导出,通过

--default-parallelism
或为不同对象类型设置线程数来加速备份。

例如,启用 4 个并行线程进行备份:

mysqlpump -u root -p --default-parallelism=4 --all-databases > parallel_backup.sql

也可以分别指定不同对象的线程数:

mysqlpump -u root -p \ --add-drop-table \ --parallel-schemas=4=db1,db2,db3 \ db1 db2 db3 > partial_parallel.sql

3. 精细化控制备份内容

你可以按需排除或包含特定数据库、表或对象类型。

排除某些数据库:使用
--exclude-databases
只备份特定表:在命令后指定表名 跳过某些对象类型,如视图、存储过程等

示例:备份除系统库外的所有用户数据库

mysqlpump -u root -p \ --exclude-databases=mysql,sys,information_schema,performance_schema \ --all-databases > user_dbs.sql

只备份某个数据库中的几张表:

mysqlpump -u root -p mydb table1 table2 > tables_backup.sql

4. 启用压缩节省空间

mysqlpump 支持直接压缩输出,使用

--compress-output
参数可显著减小备份文件体积。

支持的压缩算法有:

LZ4
ZLIB
(也支持
NONE

mysqlpump -u root -p \ --compress-output=LZ4 \ --all-databases > compressed_backup.sql.lz4

恢复时需先解压(如使用

lz4
工具):

lz4 -d compressed_backup.sql.lz4 | mysql -u root -p

基本上就这些。合理使用 mysqlpump 能有效提升备份效率,特别是在大数据库或多库环境下。注意权限、磁盘空间和网络稳定性,确保备份完整可靠。

相关推荐