Databases 14 min read

Tired of Hand‑Crafted Backup Scripts? Meet Databasus – One Open‑Source Platform for All Major Databases

Databasus is an open‑source backup management platform that unifies PostgreSQL, MySQL, MariaDB and MongoDB backups with a web UI, offering logical, physical and incremental backups, automated scheduling, AES‑256‑GCM encryption, multi‑cloud storage, RBAC collaboration, and optional agents for secure, out‑bound connections.

dbaplus Community
dbaplus Community
dbaplus Community
Tired of Hand‑Crafted Backup Scripts? Meet Databasus – One Open‑Source Platform for All Major Databases

Problem Statement

Traditional backup approaches rely on ad‑hoc scripts such as pg_dump, mysqldump, and mongodump combined with scattered cron jobs. This leads to frequent failures, uncontrolled storage growth, and audit gaps, especially when multiple databases and teams are involved.

Architecture Overview

Databasus consists of a Go‑based backend and a lightweight web frontend. Backup tasks are coordinated through a central server while a small Go agent runs on each database host. The agent initiates outbound TLS connections to the server, eliminating the need for inbound ports on the database host. Token‑based authentication secures all traffic, making the design suitable for private‑cloud VPCs, Kubernetes clusters, and on‑prem environments.

Supported Databases & Versions

PostgreSQL 12‑18

MySQL 5.7, 8, 9

MariaDB 10‑12

MongoDB 4.2+, 5‑8

Backup Types

Three backup modalities are available:

Logical – Executes pg_dump / mysqldump / mongodump to produce a logical snapshot. Slower backup and restore because rows must be scanned and indexes rebuilt. Supports cross‑version migration. No agent required.

Physical – Directly copies the database cluster files. Fast backup and restore. Requires the agent to access the host filesystem.

Incremental – Performs a full physical backup plus continuous WAL (Write‑Ahead Log) archiving. Full backup is fast; subsequent increments are lightweight. Enables point‑in‑time recovery (PITR) with second‑level granularity. Requires the agent.

Agent Design

Outbound connection : Agent connects to the Databasus core, so no inbound ports are opened on the database server.

Local access : Uses Unix‑socket (PostgreSQL) or direct host access to avoid exposing database ports.

Security : TLS encryption and token authentication for every request.

Deployment : Available as a host binary or Docker container.

Installation Options

One‑click script (Linux)

sudo curl -sSL https://raw.githubusercontent.com/databasus/databasus/refs/heads/main/install-databasus.sh | sudo bash

Docker run (quick start)

docker run -d \
  --name databasus \
  -p 4005:4005 \
  -v ./databasus-data:/databasus-data \
  --restart unless-stopped \
  databasus/databasus:latest

Kubernetes Helm

helm install databasus oci://ghcr.io/databasus/charts/databasus \
  -n databasus --create-namespace
kubectl port-forward svc/databasus-service 4005:4005 -n databasus

Initial Configuration Steps

Create a workspace to isolate projects or teams.

Add a storage backend (S3, Google Drive, or local filesystem) and test the connection.

Add a database connection (host, port, user, password, DB name). Databasus suggests a read‑only user and records it for backup operations.

Define a retention policy (e.g., keep 7 days).

Select notification channels (Slack, Telegram, Email, Webhook).

Set a schedule using cron syntax (e.g., 0 4 * * * for daily 4 AM backups).

Backup & Restore Workflow

Backup files follow a three‑step pipeline: logical dump → Zstandard compression (4‑8× size reduction, ~20 % CPU overhead) → AES‑256‑GCM encryption. The resulting .enc file can be restored without Databasus:

# 1. Decrypt
openssl enc -d -aes-256-gcm -pbkdf2 -iter 100000 \
  -in backup.enc -out backup.zst \
  -K $(xxd -p -c 32 secret.key) -iv $(cat backup.iv)
# 2. Decompress
zstd -d backup.zst -o backup.dump
# 3. Restore (PostgreSQL example)
pg_restore -d new_database_name -U postgres backup.dump

Full restore guide: https://databasus.com/how-to-recover-without-databasus

Performance Comparison

Logical backup : 2‑4 hours restore for 1 TB; suitable for < 100 GB databases and cross‑version migrations.

Physical backup : 30‑60 minutes restore for 1 TB; requires database shutdown before restore.

Incremental backup : Full backup time plus WAL replay (seconds‑minutes); provides second‑level recovery granularity.

Tool Selection Guidance

Individual / small team – Databasus (Web UI, built‑in scheduler, no scripts).

DevOps team – Databasus (workspace collaboration, RBAC, audit logs).

Large databases (≥500 GB) – WAL‑G, pgBackRest, or Barman (better physical/incremental performance).

Cloud‑native environments – WAL‑G (tight integration with object storage).

Multi‑cloud hybrid – Databasus (agent outbound connection fits private network policies).

Cross‑database product needs – Databasus or WAL‑G (Databasus adds UI and team features).

Advantages & Limitations

Unified management : Single platform for PostgreSQL, MySQL, MariaDB, and MongoDB with centralized monitoring.

Flexible deployment : Docker, shell script, or Helm; works with on‑prem, RDS, Cloud SQL, Azure DB.

Team collaboration : Workspaces, RBAC, audit logs meet compliance requirements.

Security : AES‑256‑GCM encryption, zero‑trust storage, read‑only DB users.

Notifications : Slack, Telegram, Email, Webhook.

Limitations : Physical/incremental backup performance lags behind dedicated tools for databases ≥5 TB; agent required for those modes; only MongoDB is supported among NoSQL databases; cloud‑RDS incremental backup relies on provider‑native PITR.

One‑Sentence Takeaway

Databasus provides a “database backup‑as‑a‑service” platform that combines a web UI, multi‑database support, diverse storage backends, and collaboration features, enabling teams to configure production‑grade automated backups in under five minutes.

Databasus architecture diagram
Databasus architecture diagram
Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

DockerKubernetesMySQLPostgreSQLdatabase backupMongoDBAES-256-GCMDatabasus
dbaplus Community
Written by

dbaplus Community

Enterprise-level professional community for Database, BigData, and AIOps. Daily original articles, weekly online tech talks, monthly offline salons, and quarterly XCOPS&DAMS conferences—delivered by industry experts.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.