【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 参数(默认启用)优化导出效率
  • 重要数据应先测试恢复流程
相关推荐
HC02205 小时前
【保姆级教程】MySQL 5.7 彻底卸载与重新安装全流程(附常见问题解决)
数据库·mysql·mysql5.7·数据库安装·彻底卸载 mysql·mysql 配置教程
lkforce5 小时前
mysql表连接,因类型不匹配而导致索引失效的场景
数据库·mysql
超人小子5 小时前
mysql重置密码
数据库·mysql·adb
普通网友5 小时前
【mysql】锁机制 - 2.行锁间隙锁临键锁
数据库·mysql
zwtahql5 小时前
mysql的安装和卸载过程
数据库·mysql
Siren_dream5 小时前
在Ubuntu通过命令行安装MySQL(tabby远程)
mysql·ubuntu
零起飞5 小时前
生产管理系统详解:高离散制造 – 生产订单数据库设计表(核心表结构)
数据库·oracle·制造
李慕婉学姐5 小时前
Springboot旅游管理系统8cx8xy5m(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·旅游
国服第二切图仔6 小时前
Rust开发之使用anyhow与thiserror简化错误处理
服务器·数据库·rust