【MySQL】mysqldump使用方法

mysqldump 基本语法

执行 mysqldump 时需要指定连接数据库的参数(如用户名、密码)和导出目标。基础命令格式如下:

bash 复制代码
mysqldump -u [用户名] -p[密码] [数据库名] > [输出文件.sql]

注意 -p 和密码之间无空格。若省略密码,执行后会提示输入。

常用选项说明

  • --databases-B:导出指定数据库(含建库语句)

    bash 复制代码
    mysqldump -u root -p --databases db1 db2 > backup.sql
  • --all-databases-A:导出所有数据库

    bash 复制代码
    mysqldump -u root -p --all-databases > full_backup.sql
  • --tables:导出指定表

    bash 复制代码
    mysqldump -u root -p db1 table1 table2 > tables.sql
  • --no-data-d:仅导出表结构

    bash 复制代码
    mysqldump -u root -p -d db1 > schema_only.sql
  • --where:按条件导出数据

    bash 复制代码
    mysqldump -u root -p db1 table1 --where="id>100" > filtered_data.sql

高级功能

增量备份(结合binlog) 先进行全量备份:

bash 复制代码
mysqldump -u root -p --flush-logs --master-data=2 --all-databases > full_backup.sql

后续通过 mysqlbinlog 工具解析binlog实现增量恢复。

压缩输出 直接导出为压缩文件:

bash 复制代码
mysqldump -u root -p db1 | gzip > backup.sql.gz

远程备份 从远程服务器导出:

bash 复制代码
mysqldump -h 192.168.1.100 -u root -p db1 > remote_backup.sql

恢复数据

使用 mysql 客户端导入:

bash 复制代码
mysql -u root -p db1 < backup.sql

或登录MySQL后执行:

sql 复制代码
source /path/to/backup.sql;

注意事项

  • 确保有足够的磁盘空间存放备份文件
  • 大型数据库建议在低峰期操作
  • 备份前可使用 --opt 参数(默认启用)优化导出效率
  • 重要数据应先测试恢复流程
相关推荐
倔强的石头_22 分钟前
关系数据库替换用金仓:数据迁移过程中的完整性与一致性风险
数据库
Elastic 中国社区官方博客28 分钟前
使用 Groq 与 Elasticsearch 进行智能查询
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
穿过锁扣的风44 分钟前
一文搞懂 SQL 五大分类:DQL/DML/DDL/DCL/TCL
数据库·microsoft·oracle
l1t1 小时前
DeepSeek总结的SNKV — 无查询处理器的 SQLite 键值存储
数据库·sqlite·kvstore
洛豳枭薰1 小时前
MySQL 梳理
数据库·mysql
九.九1 小时前
CANN 算子生态的底层安全与驱动依赖:固件校验与算子安全边界的强化
大数据·数据库·安全
蓝帆傲亦1 小时前
代码革命!我用Claude Code 3个月完成1年工作量,这些实战经验全给你
jvm·数据库·oracle
亓才孓1 小时前
[JDBC]事务
java·开发语言·数据库
PD我是你的真爱粉1 小时前
FastAPI使用tortoiseORM
数据库·fastapi
剩下了什么9 小时前
MySQL JSON_SET() 函数
数据库·mysql·json