Mysql导出表结构及表数据 mysqldump用法
封面图
•
2025-10-09
•
MySQL
147
0
0
0
`mysqldump` 是 MySQL 提供的一个非常强大的命令行工具,用于备份数据库、导出表结构和数据。以下是 `mysqldump` 的常用用法,包括导出 **表结构** 和 **表数据**。 --- ## 一、基本语法 ```bash mysqldump [选项] 数据库名 [表名] > 输出文件路径 ``` --- ## 二、导出整个数据库(包含结构和数据) ```bash mysqldump -u 用户名 -p 数据库名 > 文件名.sql ``` 例如: ```bash mysqldump -u root -p mydatabase > mydatabase_backup.sql ``` - `-u`:指定用户名(如 root) - `-p`:提示输入密码 - `mydatabase`:要导出的数据库名 - `mydatabase_backup.sql`:保存的备份文件 > ✅ 这个命令会同时导出 **表结构** 和 **表数据**。 --- ## 三、只导出表结构(不导出数据) ```bash mysqldump -u 用户名 -p --no-data 数据库名 > 结构文件.sql ``` 例如: ```bash mysqldump -u root -p --no-data mydatabase > mydatabase_structure.sql ``` - `--no-data`:表示只导出表结构,不导出数据。 --- ## 四、只导出数据(不导出结构) ```bash mysqldump -u 用户名 -p --no-create-db --no-create-info 数据库名 > 数据文件.sql ``` 例如: ```bash mysqldump -u root -p --no-create-db --no-create-info mydatabase > mydatabase_data.sql ``` - `--no-create-db`:不导出数据库创建语句 - `--no-create-info`:不导出表结构(即 CREATE TABLE 语句) --- ## 五、导出单个表的结构和数据 ```bash mysqldump -u 用户名 -p 数据库名 表名 > 表文件.sql ``` 例如: ```bash mysqldump -u root -p mydatabase users > users_backup.sql ``` --- ## 六、导出多个表的结构和数据 ```bash mysqldump -u 用户名 -p 数据库名 表1 表2 ... > 文件名.sql ``` 例如: ```bash mysqldump -u root -p mydatabase users orders > users_orders_backup.sql ``` --- ## 七、其他常用选项 | 选项 | 说明 | |------|------| | `--compact` | 精简输出(去除注释) | | `--add-drop-table` | 在每个表前添加 `DROP TABLE` 语句(默认开启) | | `--skip-add-drop-table` | 不添加 `DROP TABLE` 语句 | | `--single-transaction` | 对 InnoDB 表进行一致性备份(适合在线备份) | | `--quick` | 避免将整个结果集加载到内存中(适合大表) | | `--result-file=文件名` | 指定输出文件(等同于 `>` 重定向) | --- ## 八、示例汇总 ### 1. 导出整个数据库(结构 + 数据) ```bash mysqldump -u root -p mydatabase > mydatabase.sql ``` ### 2. 只导出结构 ```bash mysqldump -u root -p --no-data mydatabase > mydatabase_structure.sql ``` ### 3. 只导出数据 ```bash mysqldump -u root -p --no-create-db --no-create-info mydatabase > mydatabase_data.sql ``` ### 4. 导出单个表 ```bash mysqldump -u root -p mydatabase users > users.sql ``` ### 5. 使用事务安全导出(InnoDB) ```bash mysqldump -u root -p --single-transaction mydatabase > mydatabase.sql ``` --- ## 九、导入 SQL 文件 使用 `mysql` 命令导入备份文件: ```bash mysql -u 用户名 -p 数据库名 < 文件名.sql ``` 例如: ```bash mysql -u root -p mydatabase < mydatabase_backup.sql ``` --- 如果你有更具体的场景(比如远程数据库、压缩备份、定时任务等),可以告诉我,我可以进一步帮你定制命令。
上一篇:
使用mysqladmin命令修改MySQL密码与忘记密码
下一篇:
MySQL重置 Auto_increment字段起始值
标题录入,一次不能超过6条
返回顶部
留言
留言
评论