使用mysqldump可高效备份MySQL指定表。1. 备份单表:mysqldump -u 用户名 -p 数据库名 表名 > 路径;2. 多表备份:在命令后依次列出表名;3. 仅结构:添加–no-data选项;4. 仅数据:使用–no-create-info;5. 常用选项包括–single-transaction(一致性备份)、–routines(存储过程)、–triggers(触发器)和–add-drop-table(避免重复导入);6. 恢复时用mysql -u 用户名 -p 数据库名 < 备份文件路径,需确保数据库存在。该方法减小备份体积,提升运维效率。

在 MySQL 中备份指定表,最常用的方法是使用 mysqldump 命令。它能导出表结构和数据,生成 SQL 文件以便恢复或迁移。
1. 使用 mysqldump 备份单个表
基本语法:
mysqldump -u [用户名] -p[密码] [数据库名] [表名] > [备份文件路径]
示例:
备份名为 user_info 的表,所属数据库为 mydb:
mysqldump -u root -p mydb user_info > /backup/user_info_backup.sql
执行后会提示输入密码,成功后生成 SQL 文件。
2. 备份多个指定表
只需在命令中列出多个表名:
mysqldump -u root -p mydb table1 table2 table3 > /backup/multi_table_backup.sql
3. 仅备份表结构(不包含数据)
使用 –no-data 选项:
mysqldump -u root -p –no-data mydb user_info > /backup/structure_only.sql
4. 仅备份数据(不包含 CREATE TABLE 语句)
使用 –no-create-info 选项:
mysqldump -u root -p –no-create-info mydb user_info > /backup/data_only.sql
5. 添加其他常用选项提升实用性
- –single-transaction:适用于 InnoDB,保证一致性且不锁表
- –routines:包含存储过程和函数
- –triggers:包含触发器
- –add-drop-table:生成 DROP TABLE 语句,防止重复导入错误
完整示例:
mysqldump -u root -p –single-transaction –routines –triggers –add-drop-table mydb user_info > /backup/user_info_full.sql
6. 恢复备份的表
使用 mysql 命令导入:
mysql -u root -p mydb < /backup/user_info_backup.sql
确保数据库存在,否则先创建:
CREATE database if NOT EXISTS mydb;
基本上就这些。掌握 mysqldump 针对表的备份方式,能有效减少备份体积,提高运维效率。


