Databasus

MySQL 备份工具,支持 MariaDB

Databasus 是一款免费、开源、可自托管的 MySQL 和 MariaDB 数据库备份工具。按计划自动执行转储,将备份存放到 S3、Google Drive 或本地。备份完成后通过 Slack、Discord 或 Telegram 接收通知

用于管理 MySQL 备份的 Databasus 控制台界面
概览

MySQL 备份功能

Databasus 在 mysqldump 之上提供企业级能力:自动定时调度、 云存储集成、实时通知和 AES-256-GCM 加密。适合管理 MySQL 数据库的开发者、DevOps 团队和企业

1

MySQL 定时转储

MySQL 定时备份配置

在数据库负载较低的时段定时执行 mysqldump。可选择每小时、每天、每周、每月的间隔,也可以用 cron 表达式做精确控制

2

MySQL 健康监控

MySQL 健康检查

通过可配置的健康检查监控 MySQL 连接可用性。数据库不可达或恢复时收到通知

可设置检查间隔(每分钟、每 5 分钟等)以及标记数据库离线前的失败次数阈值

3

将 MySQL 转储存放到任何地方

将 MySQL 备份文件存放在本地、S3 兼容存储、Google Drive、Dropbox、NAS 或其他目标。数据始终在你的掌控之中。 查看全部 →

MySQL 备份存储目标
4

备份通知

MySQL 备份完成或失败时收到提醒。将通知发送到 DevOps 团队群聊或个人频道。 查看全部 →

MySQL 备份通知
5

通过 Docker 自托管

在自己的基础设施上运行 Databasus。所有 MySQL 凭据和备份数据都保存在你掌控的服务器上。通过脚本、Docker 或 Kubernetes 约 2 分钟即可部署完成

Docker 部署
6

开源且免费

Databasus 完全开源,采用 Apache 2.0 许可证。你可以审阅每一行代码、Fork 它、参与贡献。个人和企业均可免费使用

GitHub 开源
7

MySQL 和 MariaDB 版本

支持 MySQL 5.7、8.0、8.4 和 9。支持 MariaDB 10、11 和 12,并使用原生 mariadb-dump 工具确保完全兼容

MySQL 版本
8

访问管理

面向团队
MySQL 备份访问管理

控制谁可以查看或管理 MySQL 数据库。为不同项目创建工作区。分配查看者、编辑者或管理员角色。 了解更多 →

9

审计日志

面向团队
MySQL 备份审计日志

跟踪所有操作:备份下载、计划变更、配置更新。清楚记录谁在何时做了什么, 便于合规审查和责任追溯。 了解更多 →

10

安全性

MySQL 凭据在存储前使用 AES-256-GCM 加密。每个备份文件都使用唯一密钥加密。密码通过临时配置文件传递, 绝不出现在命令行中。 了解更多 →

MySQL 备份安全
11

支持云端 MySQL 数据库

Databasus 可以连接云端托管的 MySQL 数据库,包括 AWS RDS for MySQL、Google Cloud SQL、Azure Database for MySQL 和 PlanetScale。由于它通过 mysqldump 做逻辑备份,只需要标准的连接凭据,不需要特殊的云权限或文件系统访问

基于 mysqldump

MySQL 备份

Databasus 底层使用 mysqldump,即 MySQL 官方的备份工具。当你触发一次备份时,Databasus 会以优化参数执行 mysqldump:

  • --single-transaction 在不锁表的情况下获得一致性快照
  • --routines 包含存储过程和函数
  • --triggers 包含数据库触发器
  • --events 包含计划事件

对于 MySQL 8.0 及更新版本,Databasus 会启用 zstd 网络压缩,在低速连接下加快传输。MySQL 5.7 会自动使用传统压缩方式。

支持的 MySQL 版本:

MySQL 5.7MySQL 8.0MySQL 8.4MySQL 9
MySQL 数据库

通过 mysqldump 完成官方 MySQL 数据库备份,支持压缩、加密和云存储

原生 mariadb-dump 工具

MariaDB 备份

对于 MariaDB 数据库,Databasus 使用原生的 mariadb-dump 工具而非 mysqldump,从而与 MariaDB 特有功能和优化完全兼容。

mariadb-dump 以同样的优化参数执行:single-transaction 模式保证备份一致性,存储过程、触发器和计划事件默认包含在内。

  • 与 MariaDB 功能完全兼容
  • 支持 SSL/TLS 连接
  • 网络压缩加快传输
  • 与 MySQL 相同的加密和存储选项

支持的 MariaDB 版本:

MariaDB 10MariaDB 11MariaDB 12
MariaDB 数据库

通过 mariadb-dump 完成原生 MariaDB 数据库备份,功能完全兼容

开始使用

如何安装?

Databasus 支持多种安装方式。可在 VPS、本地机器或 Kubernetes 集群上约 2 分钟完成部署。同一套安装即可用于 MySQL、MariaDB、PostgreSQL 和 MongoDB 的数据库备份

自动安装脚本(推荐)
安装脚本会安装 Docker 和 Docker Compose(如果尚未安装),配置 Databasus 并设置系统重启后自动启动。
sudo apt-get install -y curl && \
sudo curl -sSL https://raw.githubusercontent.com/databasus/databasus/refs/heads/main/install-databasus.sh | sudo bash
了解更多安装方式
如何安装 Databasus
常见问题

MySQL 备份常见问题

关于使用 Databasus 备份 MySQL 和 MariaDB 数据库的常见问题。如有其他问题,欢迎加入我们的 Telegram 社区

1

Databasus 是什么?它如何备份 MySQL 数据库?

Databasus 是一款采用 Apache 2.0 许可证的自托管备份工具,底层使用 mysqldump 创建一致的 MySQL 备份。它在 mysqldump 之上提供现代化 Web 界面、自动定时调度、云存储集成(S3、Google Drive、Dropbox)、实时通知(Slack、Discord、Telegram)和 AES-256-GCM 加密,让你无需再编写自定义 Shell 脚本和 cron 任务。
2

Databasus 是 mysqldump 的替代品还是取代它?

Databasus 是对 mysqldump 的扩展而非取代。它在底层以优化参数(--single-transaction、--routines、--triggers、--events)执行 mysqldump,然后处理压缩、加密并上传到你配置的存储。你既保留 mysqldump 的全部可靠性,又通过 Web 界面获得定时调度、云存储、通知和团队协作功能。
3

Databasus 支持哪些 MySQL 版本?

Databasus 支持 MySQL 5.7、8.0、8.4 和 9。对于 MySQL 8.0 及更新版本,Databasus 使用 zstd 网络压缩,在低速连接下加快传输。对于 MySQL 5.7,会自动使用传统压缩方式。所有版本享有相同的功能:定时调度、加密、云存储和通知。
4

Databasus 支持哪些 MariaDB 版本?

Databasus 支持 MariaDB 10、11 和 12。对于 MariaDB 备份,Databasus 使用原生的 mariadb-dump 工具而非 mysqldump,确保与 MariaDB 特有功能和优化完全兼容。MySQL 和 MariaDB 共用同一套 Web 界面、定时调度、存储和通知功能。
5

可以备份托管在 AWS RDS、Google Cloud SQL 或 Azure 上的 MySQL 数据库吗?

可以。Databasus 可以无缝备份云端托管的 MySQL 数据库,包括 AWS RDS for MySQL、Google Cloud SQL、Azure Database for MySQL 和 PlanetScale。由于 Databasus 通过 mysqldump 做逻辑备份,只需要标准的 MySQL 连接凭据(主机、端口、用户名、密码),不需要特殊的云权限、IAM 角色或文件系统访问。
6

Databasus 中的 MySQL 备份调度是如何工作的?

你可以按每小时、每天、每周或每月的间隔安排 MySQL 备份,也可以用 cron 表达式做精确控制。可选择具体的时间(比如流量较低的凌晨 3 点)和日期。其余的交给 Databasus:连接 MySQL、运行 mysqldump、压缩输出、加密并上传到你的存储目标。
7

我的 MySQL 备份存放在哪里?

MySQL 备份文件的存放位置由你决定:服务器本地、S3 兼容存储(AWS S3、MinIO、Backblaze B2)、Google Drive、Cloudflare R2、Dropbox、通过 SFTP 访问的 NAS,或 rclone 支持的任何目标。每个数据库都可以有自己的存储目标。备份文件始终在你的掌控之中。
8

Databasus 如何保护 MySQL 数据库凭据和备份的安全?

Databasus 采用多层安全机制:

1. 凭据加密:所有 MySQL 密码、令牌和连接字符串在存储前均使用 AES-256-GCM 加密。加密密钥与数据库分开存放。

2. 备份加密:每个备份文件使用由主密钥、备份 ID 和随机盐派生的唯一密钥加密。

3. 安全的密码处理:MySQL 密码通过权限为 0600 的临时 .my.cnf 文件传递,绝不出现在命令行参数或日志中。
9

可以把 MySQL 备份恢复到其他服务器或云服务商吗?

可以。Databasus 创建的是标准的 mysqldump 逻辑备份,可以恢复到任何 MySQL 服务器:不同版本、不同云服务商或本地开发机。从 Databasus 下载备份(自动解密),然后用 mysql 命令恢复即可。Databasus 会为每个备份展示确切的恢复命令。
10

Databasus 支持备份 MySQL 复制从库吗?

支持。你可以备份 MySQL 副本(从库)服务器。Databasus 使用 --single-transaction,在不停止复制的情况下创建一致性快照。这有助于把备份负载从主库上转移出去。只需将 Databasus 指向副本的连接信息即可。
11

Databasus 与 MySQL Enterprise Backup 或 Percona XtraBackup 有什么不同?

MySQL Enterprise Backup 和 Percona XtraBackup 创建的是物理(二进制)备份,需要直接访问 MySQL 数据目录所在的文件系统。它们对超大数据库更快,但是:

• 无法备份云端托管的 MySQL(RDS、Cloud SQL、Azure)
• 必须安装在数据库服务器本机上
• 部署和恢复流程更复杂

Databasus 使用逻辑备份(mysqldump),适用于任何能连接上的 MySQL 服务器,包括所有云服务商。对大多数 100 GB 以下的数据库来说,逻辑备份足够实用,管理起来也简单得多。
12

可以用同一个 Databasus 实例同时备份 MySQL 和 PostgreSQL 数据库吗?

可以。Databasus 在单个安装中同时支持 MySQL、MariaDB、PostgreSQL 和 MongoDB。你可以在一个 Web 界面中管理所有数据库的备份,并为每个数据库设置不同的计划、存储目标和通知渠道。这对管理多种数据库基础设施的团队很有帮助。