MySQL数据库逻辑备份有四种方法:一、推荐使用mysqldump命令行工具导出结构与数据;二、SELECT INTO OUTFILE导出单表纯数据为文本;三、phpMyAdmin图形界面导出适合Web环境;四、MySQL Shell的util.dumpSchemas适用于8.0+大型库。

如果您需要将 MySQL 数据库中的数据安全保存或迁移至其他环境,则必须通过导出 SQL 文件的方式创建逻辑备份。以下是完成此任务的多种可行方法:
一、使用 mysqldump 命令行工具导出(推荐)
mysqldump 是 MySQL 官方提供的标准备份工具,适用于大多数场景,支持结构与数据一体化导出,并可控制导出粒度。
1、打开终端或命令提示符,确保 mysqldump 已加入系统 PATH 环境变量。
2、执行基础导出命令:mysqldump -u root -p database_name > backup.sql。
3、输入数据库用户密码后,系统将生成包含建表语句和 INSERT 语句的 SQL 文件。
4、如需仅导出结构不包含数据,添加 --no-data 参数;如需仅导出数据不包含建表语句,添加 --no-create-info 参数。
5、若要压缩输出,可组合使用管道:mysqldump -u root -p database_name | gzip > backup.sql.gz。
二、使用 SELECT INTO OUTFILE 导出单表数据(限定场景)
该方式仅适用于导出某张表的纯数据(无结构),输出为文本格式(如 CSV),需具备 FILE 权限且目标路径在数据库服务器本地。
1、登录 MySQL 客户端:mysql -u root -p。
2、选择目标数据库:USE database_name;。
3、执行导出语句:SELECT * FROM table_name INTO OUTFILE '/var/lib/mysql-files/export.csv' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';。
4、确认导出路径存在且 MySQL 进程对该路径具有写权限,否则会报错 ERROR 1290 (HY000)。
Miller (mlr) 是一个命令行工具,用于查询、整形和重新格式化名称索引数据,如 CSV、TSV、JSON 和 JSON Lines。它将 awk、sed、cut、join 和 sort 的功能整合到一个专为结构化数据处理而构建的单一工具中。
三、使用 phpMyAdmin 图形界面导出
适用于不具备命令行访问权限但拥有 Web 管理后台的用户,操作直观,适合小到中等规模数据库。
1、在浏览器中访问 phpMyAdmin 地址,使用有效账号登录。
2、在左侧数据库列表中点击目标数据库名称。
3、切换至 导出 标签页,保持默认导出方式为 快速 或切换为 自定义 以调整编码、格式与对象范围。
4、勾选 另存为文件,设置文件名后缀为 .sql,并点击 执行 按钮。
5、浏览器将自动下载生成的 SQL 文件。
四、使用 MySQL Shell 的 util.dumpSchemas 导出(MySQL 8.0+)
MySQL Shell 提供了更现代的导出接口,支持并行导出、压缩、一致性快照等高级特性,适用于大型数据库。
1、启动 MySQL Shell:mysqlsh -u root -p。
2、连接实例后执行 JavaScript 模式命令:util.dumpSchemas(['database_name'], '/backup/path', {ocimds: true, compatibility: ['strip_restricted_grants']});。
3、等待导出完成,输出目录中将生成多个 .sql 文件及元数据描述文件。
4、如需单文件输出,设置参数 chunking: false 并配合 bytesPerChunk: 0。

















