Boot+Cloud项目学习:macrozheng.com
对于互联网应用而言,数据库备份的重要性不言而喻。一次备份的缺失,完全可能成为一场灾难的开始。今天要介绍的这款开源产品——Databasus,就致力于让数据库备份这件事变得简单、可靠且优雅。它不仅仅是一个备份工具,更像是一位全天候、全自动、且极具“品味”的数据管家。
简介
Databasus 是一款免费、开源且可自行托管的数据库备份工具。它支持将备份文件保存到不同的存储位置(如 S3、Google Drive、FTP 等),并提供多种渠道的备份进度通知(如 Slack、Discord、Telegram 等)。
回想过去,我们或许都曾写过一堆定制化的备份脚本,用 cron 定时执行,再通过 scp 或 rsync 传到另一台服务器。这套方案初期或许能用,但随着数据库版本更新、存储地点增加(比如同时需要传到本地、S3 和 Google Drive)、以及团队协作需求的涌现,那些脚本就逐渐变成了难以维护的“祖传代码”。
Databasus 正是为了终结这种混乱而生。它提供了一个带精美 Web UI 的中央控制台,让你能像管理云服务一样,优雅地管理所有备份任务。

功能特性
支持的数据库
- PostgreSQL: 支持 12、13、14、15、16、17 和 18 版本
- MySQL: 支持 5.7、8 和 9
- MariaDB: 支持 10 和 11
- MongoDB: 支持 4、5、6、7 和 8
定时备份
- 灵活排班: 按小时、按天、按周、按月或定时任务(cron)设置
- 精确计时: 可在特定时间运行备份(例如,凌晨 4 点流量低谷期)
- 智能压缩: 通过均衡压缩可节省 4-8 倍空间(约 20% 的额外开销)
支持多个存储目标
- 本地存储: 将备份保存在 VPS/服务器本地
- 云存储: 支持 S3、Cloudflare R2、Google Drive、NAS、Dropbox、SFTP、Rclone 等多种主流存储
- 安全可靠: 所有备份数据和存储配置均由您自己掌控
智能通知
- 多种渠道: 支持电子邮件、Telegram、Slack、Discord、Webhook
- 实时更新: 成功和失败都会触发通知
- 团队集成: 通知功能能完美融入 DevOps 工作流程
企业级安全
- AES-256-GCM 加密: 为备份文件提供企业级保护
- 零信任存储: 备份数据经过加密,对攻击者来说毫无用处,因此您可以安全地将其存储在 S3、Azure Blob 存储等共享存储中。
- 机密信息加密: 所有敏感数据(如数据库密码、存储密钥)均经过加密,绝不会在日志或错误消息中泄露。
- 只读用户: Databasus 默认使用只读用户进行备份,绝不会存储任何可能修改您数据的内容。
团队协作性强
- 工作区: 可为不同项目或团队分组管理数据库、通知程序和存储空间
- 访问管理: 通过基于角色的权限控制(RBAC)来管理谁可以查看或管理特定数据库
- 审计日志: 跟踪用户所做的所有系统活动和更改
- 用户角色: 在工作区内可分配查看者、成员、管理员或所有者角色
安装部署
推荐使用脚本化或者 Docker 安装方式。
自动安装脚本(推荐,仅限 Linux)
安装脚本将执行以下操作:使用 Docker Compose 安装 Docker(如果尚未安装)、设置数据库、配置系统重启后自动启动。
sudo apt-get install -y curl && \
sudo curl -sSL https://raw.githubusercontent.com/databasus/databasus/refs/heads/main/install-databasus.sh \
| sudo bash
Docker部署
运行 Databasus 最简单的方式是使用 Docker。作为一个现代化的运维工具,推荐大家通过 Docker 来快速部署和体验。
docker run -d \
--name databasus \
-p 4005:4005 \
-v ./databasus-data:/databasus-data \
--restart unless-stopped \
databasus/databasus:latest
这条命令将:
- 启动 Databasus 容器
- 将所有数据存储在
./databasus-data 目录中
- 确保系统重启后容器自动重启
使用教程
- 访问控制面板: 部署完成后,在浏览器中导航至
http://localhost:4005
- 添加您的第一个备份数据库: 单击“新建数据库”并按照设置向导操作。
- 配置计划: 可选择按小时、天、周、月或定时任务 (cron) 间隔进行安排。
- 设置数据库连接: 输入您的数据库(如 MySQL 或 PostgreSQL)凭据和连接详细信息。
- 选择存储位置: 选择备份文件的存储位置(本地、S3、Google 云端硬盘等)。
- 添加通知(可选): 配置电子邮件、Telegram、Slack 或 Webhook 通知。
- 保存并开始: Databasus 将验证设置并立即开始执行备份计划。
项目地址
如果你想深入探索或为这个优秀的 开源项目 贡献代码,可以在 GitHub 上找到它:https://github.com/databasus/databasus。
希望这款工具能帮助你告别繁琐的备份脚本,更从容地守护数据安全。如果你在部署或使用过程中有任何心得,欢迎到 云栈社区 与更多开发者交流讨论。
|