MySQL 备份必学:mysqldump 命令超全详解(单库 / 多库 / 热备一网打尽)
一、命令简介mysqldump 是 MySQL 数据库官方提供的逻辑备份工具。它能够将一个或多个 MySQL 数据库的结构和数据以标准的 SQL 语句形式导出到一个文本文件中。这个文件可以用于数据备份、迁移、在不同 MySQL 服务器之间复制数据库或者作为版本控制的数据库结构快照。 其核心原理是通过连接 MySQL 服务器执行查询来读取数据库元数据和表数据然后生成相应的 CREATE 和 INSERT 等 SQL 语句。二、语法格式plaintextmysqldump [options] [db_name [tbl_name ...]]参数说明 [options] 用于控制备份行为的各种选项例如指定用户名、密码、备份模式等。这是最常用的部分。 [db_name] 指定要备份的数据库名称。 [tbl_name ...] 可选。在指定了 db_name 后可以进一步指定要备份的该数据库中的特定表。不指定则备份整个数据库。更通用的调用形式是结合选项来指定数据库plaintextmysqldump [options] --databases db_name1 [db_name2 ...] mysqldump [options] --all-databases三、常用选项及说明mysqldump 选项繁多以下分类列出最常用和关键的选项。连接选项表格选项简写说明--useruser_name-u用于连接 MySQL 服务器的用户名。--password[password]-p连接 MySQL 服务器的密码。安全建议在命令行中使用 -p 而不直接跟密码执行后会提示输入可避免密码泄露。--hosthost_name-hMySQL 服务器主机名或 IP 地址。默认为 localhost。--portport_num-PMySQL 服务器监听的 TCP/IP 端口号。默认为 3306。输出内容控制选项表格选项说明--all-databases备份 MySQL 实例中的所有数据库。--databases db1 db2备份一个或多个指定的数据库。--tables覆盖 --databases 选项使其后的参数被解释为表名。需与数据库名配合使用。--no-data-d 只导出数据库表结构CREATE 语句不导出数据。--no-create-info-t 只导出数据INSERT 语句不导出表结构CREATE 语句。--no-create-db-n 在 --databases 或 --all-databases 模式下抑制 CREATE DATABASE 语句。--skip-triggers不导出触发器。--routines-R 导出存储过程和函数。--events-E 导出事件调度器事件。--compact产生更简洁的输出省略一些注释和选项适用于调试或需要最小化输出时。--skip-comments在导出结果中不添加注释。数据导出与一致性选项表格选项说明--single-transaction重要在导出数据之前启动一个事务需要表支持事务如 InnoDB。这可以确保在导出过程中得到一个一致性的数据快照而无需锁定表。是进行在线热备的常用方式。--lock-tables-l 为每个被导出的数据库锁定其所有表。在 --single-transaction 禁用时默认启用。对于 MyISAM 表或需要跨数据库一致性时可能有用。--skip-lock-tables不锁定表。警告这可能导致导出的数据不一致例如在导出过程中有数据写入。仅在可以接受不一致性或确定无写入时使用。--lock-all-tables-x 一次性锁定所有数据库的所有表保证整个导出期间全局一致性。会导致所有表只读。--add-locks在输出的每个表数据周围添加 LOCK TABLES 和 UNLOCK TABLES 语句。这可以在导入时加快速度。--master-data[value]用于主从复制。将二进制日志文件名和位置CHANGE MASTER TO 语句写入输出。value 为 1 时以注释形式写入为 2 时以可执行语句形式写入。启用此选项会自动启用 --lock-all-tables除非同时使用 --single-transaction。--flush-logs-F 在开始导出前刷新 MySQL 服务器的日志文件。与 --master-data 或 --all-databases 结合使用便于做全量备份后的增量恢复。输出格式选项表格选项说明--complete-insert-c 使用完整的 INSERT 语句包含列名。这使导出文件更具可读性且在表结构发生变化后可能更易于导入。--extended-insert-e 使用多值列表语法INSERT INTO ... VALUES (...), (...), ...。这是默认行为可以显著减少导出文件大小并加快导入速度。使用 --skip-extended-insert 来禁用。--add-drop-database在每个 CREATE DATABASE 语句前添加 DROP DATABASE 语句。--add-drop-table在每个 CREATE TABLE 语句前添加 DROP TABLE 语句。默认启用。使用 --skip-add-drop-table 来禁用。--hex-blob使用十六进制格式导出二进制字段如 BLOB, BINARY, VARBINARY, BIT。避免因特殊字符导致数据损坏。--result-filefile_name-r 将输出直接定向到指定文件。在 Windows 系统上此选项可以避免换行符被转换。通常用输出重定向 即可。四、示例用法备份单个数据库包含结构和数据到文件plaintextmysqldump -u root -p mydatabase mydatabase_backup.sql执行后会提示输入 root 密码只备份数据库结构不包含数据plaintextmysqldump -u root -p -d mydatabase mydatabase_schema.sql只备份数据库中的数据不包含结构plaintextmysqldump -u root -p -t mydatabase mydatabase_data.sql备份多个数据库plaintextmysqldump -u root -p --databases db1 db2 db3 multi_db_backup.sql备份所有数据库完整实例备份plaintextmysqldump -u root -p --all-databases all_databases_backup.sql使用事务保证一致性并记录二进制日志位置InnoDB 热备plaintextmysqldump -u root -p --single-transaction --master-data2 --databases mydatabase mydatabase_hotbackup.sql此命令适合 InnoDB 表在备份期间不锁表并记录备份时刻的 binlog 位置便于搭建主从或做基于时间点的恢复。五、注意事项备份策略mysqldump 是逻辑备份适合中小型数据库。对于超大型数据库TB 级备份和恢复时间可能很长需要考虑物理备份工具如 Percona XtraBackup或文件系统快照。密码安全避免在命令行或 shell 脚本中直接使用 -pYourPassword这会暴露密码。推荐使用 -p 交互式输入或在配置文件中指定如/.my.cnf并设置严格的文件权限。字符集一致性如果源数据库使用了非默认字符集建议在备份时使用 --default-character-setutf8mb4根据实际情况调整选项确保导出的 SQL 文件字符集正确避免乱码。大表处理默认的 --extended-insert 选项会生成包含大量数据的单条 INSERT 语句。在导入时如果这条语句出错可能导致整个导入失败。对于特别大的表可以考虑使用 --skip-extended-insert 选项但会显著增大备份文件。恢复测试定期测试备份文件的恢复流程至关重要以确保备份是真正有效且可用的。切勿等到灾难发生时才第一次尝试恢复备份。

相关新闻

蓝牙录音芯片选型:集成蓝牙6.0 vs 外挂蓝牙方案对比

蓝牙录音芯片选型:集成蓝牙6.0 vs 外挂蓝牙方案对比

做录音设备的时候,如果要加无线传输功能,第一个遇到的问题就是:录音和蓝牙,用一颗芯片搞定,还是两颗芯片分开做。这个问题看起来只是方案差异,落到PCB上就是BOM成本、板子大小、功耗、调试周期的全面分叉。…

2026/7/23 1:36:54 阅读更多 →
Tiva™ TM4C123BH6ZRB系统控制寄存器深度解析与实战配置

Tiva™ TM4C123BH6ZRB系统控制寄存器深度解析与实战配置

1. 项目概述与核心价值在嵌入式开发领域,尤其是基于ARM Cortex-M内核的微控制器应用,系统控制模块的寄存器配置往往是项目成败的第一个技术门槛。很多开发者,特别是从Arduino或类似高级框架转向底层裸机开发的工程师,常常会在这里…

2026/7/23 1:35:54 阅读更多 →
影刀RPA 网页搜索自动化:输入与结果采集

影刀RPA 网页搜索自动化:输入与结果采集

影刀RPA 网页搜索自动化:输入与结果采集 作者:林焱 什么情况用什么 需要批量搜索关键词并采集搜索结果——比如搜100个商品名称查价格、搜公司名查工商信息、搜问题查FAQ答案。在影刀RPA里需要自动化完成"输入关键词→点击搜索→等待结果→提取数据…

2026/7/23 1:35:54 阅读更多 →

最新新闻

鸿蒙 ArkTS 入门实战:宝宝尿布库存的首屏状态与点击反馈

鸿蒙 ArkTS 入门实战:宝宝尿布库存的首屏状态与点击反馈

鸿蒙 ArkTS 入门实战:宝宝尿布库存的首屏状态与点击反馈 前言 宝宝尿布库存是一个基于 ArkTS 和 ArkUI 声明式 UI 的鸿蒙示例项目,入口文件位于 entry/src/main/ets/pages/Index.ets。 本文围绕项目当前已经实现的页面展开,结合 宝宝尿布库…

2026/7/23 2:17:08 阅读更多 →
开源项目商业化路径:从信任建立到价值变现的关键策略

开源项目商业化路径:从信任建立到价值变现的关键策略

开源项目能不能赚钱,关键看它到底解决了什么问题,以及这个问题是不是真的有人愿意买单。很多人一上来就纠结“开源了还怎么盈利”,但实际顺序应该是:先通过开源建立信任和流量,再考虑价值变现。 我自己参与和观察过不…

2026/7/23 2:17:08 阅读更多 →
Linux下私有化部署MrDoc文档库的实践指南

Linux下私有化部署MrDoc文档库的实践指南

1. 为什么需要私有化部署的在线文档库?在Linux环境下工作时,我们经常需要处理各种技术文档、配置说明和项目资料。传统的本地文档管理方式存在几个明显痛点:文档分散在各个目录难以查找、多人协作时版本混乱、无法随时随地访问。而公有云文档…

2026/7/23 2:17:08 阅读更多 →
OpenAI模型,自主入侵顶级AI公司系统!后背发凉!

OpenAI模型,自主入侵顶级AI公司系统!后背发凉!

7月16号的时候,Hugging Face发布了一则公告,公告里面说他们的系统被AI Agent入侵了。 这也是一起前所未有的AI安全事件,然后快速登上热搜,引发全网激烈讨论。Hugging Face 是干嘛的? Hugging Face 是全球最大的开源 AI…

2026/7/23 2:17:08 阅读更多 →
法律AI基准测试解析:从通用模型到垂直优化的技术演进

法律AI基准测试解析:从通用模型到垂直优化的技术演进

最近法律AI圈有个很有意思的现象:大家都在讨论Kimi K3在法律基准测试中的表现,特别是它近乎翻倍领先Claude Fable 5的结果。但很多人可能没意识到,这个"翻倍领先"背后真正反映的是法律AI领域正在发生的关键转变——从通用能力竞争转…

2026/7/23 2:17:08 阅读更多 →
DeLIVeR框架:基于知识图谱与强化学习的真实性识别技术解析

DeLIVeR框架:基于知识图谱与强化学习的真实性识别技术解析

昨天下午,我在一个技术社区里看到有人提问:“为什么我的模型在验证集上准确率很高,但实际使用时却经常给出明显错误的判断?”这个问题让我想起了一个常见的误区——很多人在做信息真实性识别时,过于依赖模型本身的参数…

2026/7/23 2:16:08 阅读更多 →

日新闻

从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表)

从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表)

更多请点击: https://intelliparadigm.com 第一章:从单点好评到指数级传播:AI副业主理人必须掌握的4层口碑渗透模型(含ROI测算表) 当AI副业主理人不再仅满足于单次服务交付,而是主动构建可复用、可裂变、可…

2026/7/23 0:00:25 阅读更多 →
AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析

AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析

更多请点击: https://codechina.net 第一章:AI写作开头钩子设计:为什么你的AI文案完读率不足18%?——基于2,346篇A/B测试报告的归因分析 在对2,346篇跨行业AI生成文案的A/B测试数据进行聚类分析后,我们发现&#xff1…

2026/7/23 0:01:26 阅读更多 →
Chitchatter完整指南:免费开源的终极点对点安全聊天工具

Chitchatter完整指南:免费开源的终极点对点安全聊天工具

Chitchatter完整指南:免费开源的终极点对点安全聊天工具 【免费下载链接】chitchatter Secure peer-to-peer chat that is serverless, decentralized, and ephemeral 项目地址: https://gitcode.com/gh_mirrors/ch/chitchatter Chitchatter是一款革命性的安…

2026/7/23 0:01:26 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/22 8:58:19 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/22 19:43:43 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/22 12:54:44 阅读更多 →

月新闻