Databases 7 min read

How to Securely Automate Database Backups with Databasus

Databasus is a free, open‑source, self‑hosted backup tool that supports PostgreSQL, MySQL, MariaDB and MongoDB, offers flexible scheduling, multiple storage backends, enterprise‑grade encryption, team collaboration features, and can be installed via a simple script or Docker.

Java Backend Technology
Java Backend Technology
Java Backend Technology
How to Securely Automate Database Backups with Databasus

Overview

Databasus is a free, open‑source, self‑hosted database backup tool. It can back up PostgreSQL, MySQL, MariaDB, and MongoDB instances and store the backup files in a variety of locations such as S3‑compatible storage, Google Drive, FTP, or a local directory. Progress and result notifications can be sent to Slack, Discord, Telegram, email, or custom webhooks.

Supported Databases

PostgreSQL 12‑18

MySQL 5.7, 8, 9

MariaDB 10, 11

MongoDB 4‑8

Backup Scheduling

Flexible schedules: hourly, daily, weekly, monthly, or custom cron expressions.

Precise execution windows (e.g., 04:00 am low‑traffic period).

Built‑in compression reduces backup size by 4‑8× with ~20 % overhead.

Storage Targets

Local server or VPS directory.

Cloud storage: Amazon S3, Cloudflare R2, Google Drive, NAS, Dropbox, SFTP, Rclone, etc.

All data is encrypted before leaving the host, enabling zero‑trust storage on shared services.

Security

AES‑256‑GCM encryption for backup files.

Zero‑trust model: encrypted data is useless to attackers.

Sensitive connection credentials are stored encrypted and never appear in logs.

Backups are performed with a read‑only database user, preventing accidental data modification.

Installation

Automated Linux script (root required)

sudo apt-get install -y curl && \
sudo curl -sSL https://raw.githubusercontent.com/databasus/databasus/refs/heads/main/install-databasus.sh | sudo bash

Docker deployment

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

This command starts the service, mounts a persistent volume for backup data, and configures the container to restart automatically after a host reboot.

Quick start guide

Open the web UI at http://localhost:4005.

Click “New Database” and follow the wizard to add a database connection (host, port, credentials, and optional read‑only user).

Define a backup schedule using the preset options or a custom cron expression.

Select a storage destination (local path, S3 bucket, Google Drive, etc.).

Optionally configure notification channels (email, Telegram, Slack, webhook).

Save the configuration; Databasus validates the settings and starts the backup job according to the schedule.

Source repository

GitHub:

https://github.com/databasus/databasus
Databasus UI screenshot
Databasus UI screenshot
DockerDevOpsOpen-sourcesecurity
Java Backend Technology
Written by

Java Backend Technology

Focus on Java-related technologies: SSM, Spring ecosystem, microservices, MySQL, MyCat, clustering, distributed systems, middleware, Linux, networking, multithreading. Occasionally cover DevOps tools like Jenkins, Nexus, Docker, and ELK. Also share technical insights from time to time, committed to Java full-stack development!

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.