2026 年最佳 MySQL 与 MariaDB 备份工具

发布: (2026年1月3日 GMT+8 15:56)
12 分钟阅读
原文: Dev.to

Source: Dev.to

MySQL 和 MariaDB 备份工具

理解 MySQL 和 MariaDB 的备份方法

在深入具体工具之前,先了解 MySQL 和 MariaDB 可用的不同备份方法非常重要。每种方法在速度、灵活性和恢复选项方面都有各自的优势。掌握这些基础知识有助于你评估哪种工具最适合你的需求。

  • 逻辑备份 – 将数据库导出为 SQL 语句或结构化数据文件,可在不同 MySQL 和 MariaDB 版本之间迁移。
  • 物理备份 – 直接复制磁盘上的实际数据文件,恢复速度更快,但需要版本兼容。
  • 热备份 – 在数据库保持运行状态时进行。
  • 冷备份 – 需要暂时停止服务器。

备份类型概览

备份类型速度可移植性是否需要停机典型使用场景
逻辑备份(mysqldump)较慢小型数据库、迁移
物理备份(文件复制)较快大型数据库、灾难恢复
热备份(流式)中等中等生产系统

在这些方法之间的选择取决于数据库规模、可接受的停机时间以及恢复时间目标。大多数生产环境都会受益于结合多种备份策略。

Source:

Databasus

MySQL backup 解决方案已经显著发展,Databasus 成为 2026 年最受欢迎的 MySQL 和 MariaDB 备份工具。该免费、开源、自托管的解决方案提供全面的备份自动化,适用于个人和企业部署。Databasus 支持灵活的调度、多种存储目标(S3、Google Drive、本地存储等),以及通过 Email、Telegram、Slack 和 Discord 的通知。

Databasus screenshot

功能概览

功能Databasus
调度每小时、每日、每周、每月、cron
存储选项S3、Google Drive、Dropbox、SFTP、本地
加密AES‑256‑GCM
数据库支持MySQL 5.7‑9、MariaDB 10‑11
用户界面Web 界面
费用免费(开源)

入门指南

  1. 安装 – 使用 Docker(或提供的二进制文件)运行 Databasus。
  2. 访问仪表盘 – 在浏览器中打开 Web UI。
  3. 添加数据库连接 – 提供主机、端口、凭证和 SSL 选项。
  4. 选择存储目标 – 从支持的后端中选择一个或多个。
  5. 配置调度 – 选择预设间隔或自定义 cron 表达式。
  6. 创建备份 – 点击 “Create backup”。平台会自动处理压缩、加密和保留策略。

mysqldump

mysqldump 实用程序是 MySQL 内置的逻辑备份工具,由于其可靠性和零额外成本,仍被广泛使用。它生成可以重新创建数据库结构和数据的 SQL 语句,非常适合较小的数据库以及需要跨版本兼容的场景。

基本备份

mysqldump -u root -p --single-transaction --routines --triggers mydbname > backup.sql
  • --single-transaction – 在不锁表的情况下,为 InnoDB 保证一致的快照。
  • --routines & --triggers – 包含存储过程和触发器(默认不包括)。

备份所有数据库

mysqldump -u root -p --all-databases --single-transaction > all_databases.sql

优点

  • 免费且随 MySQL/MariaDB 捆绑提供。
  • 可移植的 SQL 输出可跨版本使用。

缺点

  • 没有内置的调度、加密或远程存储功能。
  • 对于大型数据库,由于逐行处理,导出和恢复可能较慢。

MySQL 企业备份

MySQL Enterprise Backup 是 Oracle 为 MySQL 数据库提供的 物理热备份 商业解决方案。它在数据库继续提供查询服务的同时执行非阻塞备份,适用于停机不可接受的大型生产系统。

关键功能

  • 增量备份 – 仅捕获自上次备份以来发生变化的数据。
  • 压缩备份 – 减少存储占用。
  • 备份加密 – 满足安全性和合规性要求。
  • 时间点恢复 – 使用二进制日志将数据库恢复到指定时刻。
  • 备份校验 – 在恢复前验证备份完整性。

MySQL Enterprise Backup 与 MySQL Enterprise Edition 紧密集成,提供额外的管理和监控功能。需要商业许可证,因此主要适用于已经与 Oracle 建立合作关系的企业。

Percona XtraBackup

Percona XtraBackup 是一个 免费、开源的热备份 解决方案,适用于 MySQL 和 MariaDB,凭借多年的使用已获得社区的高度信任。它在 无需停机 的情况下创建物理备份,支持完整备份和增量备份、压缩以及加密。

  • 热物理备份 – InnoDB/XtraDB 表无需停机。
  • 增量支持 – 后续备份更快。
  • 流式传输 – 将备份直接通过管道发送到远程存储(例如 xbstream)。
  • 压缩与加密 – 可选 --compress--encrypt 参数。
  • 兼容性 – 兼容 MySQL 5.6‑8.0、MariaDB 10.1‑10.11 和 Percona Server。

示例:完整备份到本地目录

xtrabackup --backup --target-dir=/backups/full --user=root --password=YOUR_PASS

示例:增量备份

xtrabackup --backup --target-dir=/backups/inc1 \
          --incremental-basedir=/backups/full \
          --user=root --password=YOUR_PASS

示例:准备(应用 redo 日志)

xtrabackup --prepare --target-dir=/backups/full

优点

  • 无授权费用。
  • 能够在对大型高并发数据库的影响最小的情况下处理备份。

缺点

  • 需要额外的脚本来实现调度、保留策略和远程存储。
  • 物理备份与版本绑定;恢复时必须使用相同的 MySQL/MariaDB 版本。

选择合适的工具

场景推荐工具
小型数据库,偶尔手动备份mysqldump
大型生产数据库,零停机时间Percona XtraBackup,MySQL Enterprise Backup(如果您有许可证)
统一 UI,多目标存储,开源Databasus
需要增量、加密和压缩的热备份,并提供商业支持MySQL Enterprise Backup
混合策略(逻辑 + 物理)mysqldump(用于逻辑导出)与 XtraBackup 或 Databasus(用于物理快照)结合使用

MariaDB 备份

MariaDB Backup 是 MariaDB 对 Percona XtraBackup 的分支,针对 MariaDB 数据库进行了优化。它提供相同的核心功能,并对 MariaDB 特有的特性(例如系统版本表、加密表空间)实现更紧密的集成。

基本用法

mariabackup --backup \
            --target-dir=/backup/full \
            --user=root \
            --password=secret

MariaDB Backup 原生支持静态加密,能够在无需额外配置的情况下备份加密表。它还支持备份锁定,在较新版本的 MariaDB 上实现更高效的操作。

为什么选择 mariabackup?
使用 mariabackup 可以确保更好的兼容性和对 MariaDB 特有功能的支持,因为两者正逐渐分化。

mydumper 与 myloader

mydumper 是一个高性能的逻辑备份工具,克服了 mysqldump 在大数据库上的局限性。它执行 并行 备份,显著缩短备份时间,而配套工具 myloader 负责并行恢复。

使用 mydumper 进行备份

mydumper -u root -p password -B mydbname -o /backup/mydumper

使用 myloader 并行恢复

myloader -u root -p password -B mydbname -d /backup/mydumper

关键特性

  • 并行导入/导出 → 比 mysqldump 快得多。
  • 表级粒度 → 可选择性恢复,无需处理整个备份。
  • 内置压缩支持。
  • 一致的多库快照。

注意事项
需要单独安装,且没有内置的调度功能。不过,它可以很好地与自动化系统和备份管理平台集成。

比较 MySQL 与 MariaDB 备份工具

工具类型热备份增量内置调度成本
Databasus逻辑免费
mysqldump逻辑部分免费
MySQL Enterprise Backup物理商业
Percona XtraBackup物理免费
MariaDB Backup物理免费
mydumper逻辑免费

大多数团队通过将备份管理平台(例如 Databasus)与物理备份工具结合使用,以实现自动化和性能提升,从而受益。小型数据库可以仅依赖逻辑备份,而大型生产系统则从增量物理备份中获益最大。

Backup Best Practices for MySQL and MariaDB

  1. 定期测试恢复 – 验证备份能在隔离环境中恢复。
  2. 加密备份 – 在静止和传输过程中保护敏感数据。
  3. 监控任务 – 对失败发出警报并跟踪完成状态。
  4. 记录流程 – 保持恢复步骤的最新。
  5. 遵循 3‑2‑1 规则 – 在两种不同介质上保留三份副本,其中一份放在异地(例如 S3、Google Cloud Storage、Azure Blob)。
  6. 设置保留策略 – 符合合规性和业务需求。
  7. 自动化 – 使用 Databasus 等工具进行调度、存储轮换和通知,以减少人为错误。

结论

MySQL 和 MariaDB 备份生态系统提供了一系列工具——从像 mysqldump 这样的简单实用程序到企业级解决方案,如 MySQL Enterprise Backup、Percona XtraBackup 和 MariaDB Backup。对于大多数生产环境来说,结合 逻辑物理 备份的分层方法,并配合管理平台(例如 Databasus)实现自动化,能够在速度、可靠性和运营效率之间取得最佳平衡。

无论选择何种工具,定期测试异地存储 都是确保有效数据保护的关键。

n. Invest in your backup strategy now to avoid costly data loss and extended downtime when failures inevitably occur.
0 浏览
Back to Blog

相关文章

阅读更多 »

你好,2026:这只需要两周

引言 新的一年已经到来。欢迎来到2026年,这里每个系统都是“simple at first”,每个决定都是“temporary”。一月 - 没有遗留代码 - 没有…

NextJS(App Router)中的数据库连接

介绍 在本文中,我们将探讨一种可靠的方法,将 Next.js 应用程序的 App Router 连接到使用 Prisma ORM 的数据库。 什么是 Prisma ORM?Prisma O...

WTF 是关系数据库即服务?

什么是 Relational Database?Relational Database 将数据组织成表,每个表都有行和列——就像 Excel 电子表格一样。This s...