MySQL导出最常用方式是mysqldump:导出单库用mysqldump -u用户 -p库名>文件.sql;仅数据加--no-create-info;导指定表或条件数据可追加表名或--where;CSV格式需用SELECT...INTO OUTFILE或mysql -e "SELECT..." >csv。

MySQL 数据导出最常用、最直接的方式是使用 mysqldump 命令行工具,它能生成包含 CREATE TABLE 和 INSERT 语句的标准 SQL 文件,适用于备份、迁移或跨环境同步。
导出单个数据库(含表结构和数据)
这是最基础也最常用的导出方式。确保你有对应数据库的 SELECT 权限,并能访问 MySQL 服务器命令行:
- 基本语法:mysqldump -u 用户名 -p 数据库名 > 导出文件.sql
- 执行后会提示输入密码,输入正确密码后开始导出
- 例如导出名为 testdb 的数据库:mysqldump -u root -p testdb > testdb_backup.sql
- 导出文件默认不含 CREATE DATABASE 语句,恢复时需先创建数据库(或加 --databases 参数)
只导出数据(不带建表语句)
若只需数据用于其他系统导入(如 Excel 处理、ETL 工具),可跳过 DDL,用 --no-create-info 参数:
本书是全面讲述PHP与MySQL的经典之作,书中不但全面介绍了两种技术的核心特性,还讲解了如何高效地结合这两种技术构建健壮的数据驱动的应用程序。本书涵盖了两种技术新版本中出现的最新特性,书中大量实际的示例和深入的分析均来自于作者在这方面多年的专业经验,可用于解决开发者在实际中所面临的各种挑战。
- mysqldump -u root -p --no-create-info testdb > data_only.sql
- 输出只有 INSERT 语句,表必须已存在才能成功导入
- 配合 --skip-extended-insert 可让每行 INSERT 独立,便于查看或部分编辑
导出指定表或部分数据
无需导出整个库时,可精准控制范围:
- 导出多个表:mysqldump -u root -p testdb table1 table2 > tables_backup.sql
- 导出满足条件的数据(如最近一周订单):mysqldump -u root -p --where="order_time >= '2024-06-01'" testdb orders > recent_orders.sql
- 注意:WHERE 条件中字符串需手动加引号,且避免使用特殊字符或未转义的单引号
导出为 CSV 格式(适合表格软件处理)
mysqldump 不直接支持 CSV,但可通过 MySQL 客户端的 SELECT ... INTO OUTFILE 实现:









