暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

开源数据库备份神器 Databasus|Docker容器化搭建实操

原创 江湖有缘 2026-08-17
27

开源数据库备份神器 Databasus|Docker容器化搭建实操

一、Databasus介绍

1.1 Databasus目简介

Databasus 是一款免费、开源、可自托管的现代化数据库备份管理工具。它通过一个精致且功能强大的 Web 界面,将分散的数据库备份工作统一起来,支持 PostgreSQL、MySQL、MariaDB 和 MongoDB,旨在终结混乱的手工脚本时代,让备份真正变得“可管、可控、可协作”。

1.2 Databasus主要特点

  1. 多数据库统一管理:支持 PostgreSQL 12-18、MySQL 5.7-9、MariaDB 10-12 及 MongoDB 4.2+ 至 8 等主流版本,实现单一平台集中管控。
  2. 灵活的调度与智能压缩:支持按小时、天、周、月或自定义 Cron 表达式进行精确调度,并采用智能压缩技术,可节省 4-8 倍存储空间。
  3. 真实恢复验证:通过实际启动数据库容器执行恢复操作,并生成包含每张表行数的详细报告,确保备份文件不仅存在,而且真实可用。
  4. 多样化的保留策略:提供按时间、按数量以及 GFS(祖父-父亲-儿子)分层保留三种策略,满足从简单清理到长期合规归档的各类需求。
  5. 丰富的存储后端与安全加密:支持本地、S3、Google Drive、SFTP 等数十种存储目的地,所有备份在离开前均经过 AES-256-GCM 加密,杜绝厂商锁定。
  6. 实时多渠道通知:支持邮件、Telegram、Slack、Discord 及 Webhook 等多种渠道,在备份成功或失败时第一时间通知团队。
  7. 企业级团队协作:提供工作空间隔离、基于角色的访问控制(RBAC)和完整审计日志,满足多项目、多团队的协作与合规要求。
  8. 多样的连接与备份类型:支持远程直连和轻量级 Agent 两种连接方式,并提供逻辑、物理和增量(支持 PITR 时间点恢复)三种备份类型。

二、本次实践规划

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为 Ubuntu 24.04.2 LTS。

hostnameIP地址操作系统版本Docker版本部署项目备注
jeven192.168.3.88Ubuntu 24.04.2 LTS28.5.0Databasus——

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署Databasus数据库备份工具。

三、本地环境检查

3.1 检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

root@jeven:~# systemctl status docker
● docker.service - Docker Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: enabled)
     Active: active (running) since Wed 2026-05-13 20:00:35 CST; 1 week 1 day ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 755791 (dockerd)
      Tasks: 154
     Memory: 1.3G (peak: 2.5G)
        CPU: 17min 28.568s
     CGroup: /system.slice/docker.service

3.2 检查Docker版本

检查Docker版本

root@jeven:~# docker -v
Docker version 28.5.0, build 887030f

3.3 检查docker compose 版本

检查Docker compose版本,确保2.0以上版本。

root@jeven:~# docker compose version
Docker Compose version v2.39.4

四、拉取Databasus镜像

下载Databasus镜像,执行以下命令:

root@jeven:~# docker pull databasus/databasus:v3.42.0
v3.42.0: Pulling from databasus/databasus
068fedd6b0f1: Pull complete
b82951ac38bb: Pull complete
355847d77b88: Pull complete
24b019d43c64: Pull complete
b9c684d21a23: Pull complete
4f4fb700ef54: Pull complete
079ebae73ecf: Pull complete
77222f6e2994: Pull complete
960f9198fd81: Pull complete
b38d9bf88a30: Pull complete
6dd879aea289: Pull complete
65e2dec335af: Pull complete
33a6da0e4493: Pull complete
fbd387e747d5: Pull complete
90fa4f99a3ad: Pull complete
cb000e46e837: Pull complete
Digest: sha256:f748c20cecb3cf3162d80ebfddd4f192b5e4ee640d600c9daf726310ac49e51c
Status: Downloaded newer image for databasus/databasus:v3.42.0
docker.io/databasus/databasus:v3.42.0

在这里插入图片描述

五、部署Databasus服务

5.1 创建部署目录

创建部署目录

mkdir -p /data/databasus/data  && cd /data/databasus

在测试环境中,为了方便操作,我们直接为挂载目录设置了完全权限。但在生产环境中,请务必根据实际安全需求,配置更精细、严格的权限控制方案。

chmod -R 777   /data/databasus

5.2 docker-cli方式部署(可选)

如果想要使用docker-cli方式部署,可参考以下命令部署。(可选)

docker run -d \
  --name databasus \
  --restart=unless-stopped \
  -p 6500:4005 \
  -v $(pwd)/data:/databasus-data \
  databasus/databasus:v3.42.0

5.3 创建Databasus容器

本次实践我们采用 Docker Compose 方式进行部署,这也是我推荐的方式。首先我们需要创建并编辑 docker-compose.yaml 文件,请注意宿主机映射端口可根据您的实际情况自行设置,务必避免端口冲突。

vim docker-compose.yaml
version: "3"

services:
  databasus:
    image:  databasus/databasus:v3.42.0
    container_name: databasus
    restart: always
    ports:
      - "6500:4005"
    volumes:
      - /data/databasus/data:/databasus-data



执行以下命令,创建Databasus容器。

docker compose up -d

在这里插入图片描述

5.4 查看Databasus容器状态

检查Databasus容器运行状态,确保Databasus容器正常启动。

root@jeven:/data/databasus# docker compose ps
WARN[0000] /data/databasus/docker-compose.yaml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
NAME        IMAGE                         COMMAND           SERVICE     CREATED          STATUS          PORTS
databasus   databasus/databasus:v3.42.0   "/app/start.sh"   databasus   51 seconds ago   Up 51 seconds   0.0.0.0:6500->4005/tcp, [::]:6500->4005/tcp

在这里插入图片描述

5.5 检查Databasus容器日志

检查容器运行日志,确保Databasus服务正常运行。

docker compose logs

在这里插入图片描述

在这里插入图片描述

六、访问Databasus服务

6.1 访问Databasus初始页

浏览器地址: http://<个人的服务器IP>:6500,访问Databasus初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。

在这里插入图片描述

6.2 登录Databasus

默认账号为admin,密码我们自行设置即可。

在这里插入图片描述

在这里插入图片描述

七、数据库备份

7.1 创建工作空间

点击【Create workspace】创建工作空间,名称自行填写。

在这里插入图片描述

7.2 添加备份数据库

我们点击“Add database”,填写数据库名称和数据库类型。这里备份的数据库为测试的mariadb数据库,如下所示:

在这里插入图片描述

填写备份数据库的相关信息,测试连接成功后,点击下一步继续。

在这里插入图片描述

创建只读用户,为了备份安全了创建只读用户。

在这里插入图片描述

设置备份计划:根据需要填写,注意存储选择可选择本地存储或其余方式。

在这里插入图片描述

完成备份数据库的添加,如果需要配置通知器,可自行创建与配置。

在这里插入图片描述
在这里插入图片描述

八、总结

本次实践在本地 Docker 环境中成功部署了 Databasus 数据库备份工具,从拉取镜像、创建容器到配置端口映射,整个过程流畅高效。通过其直观的 Web 界面,我们快速完成了工作空间创建与数据库添加,充分验证了该工具在统一管理多类型数据库备份任务上的便捷性。Databasus 集成了灵活的调度策略、多样化的存储后端以及强大的团队协作功能,为中小团队提供了一套开箱即用、安全可靠的数据保护方案。这套部署流程可快速复用于开发测试及生产环境,有效降低数据库备份管理的运维成本。





「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论