Database Sources
DBackup supports a wide variety of database engines.
Supported Databases
| Database | Supported Versions | Backup Method | Restore |
|---|---|---|---|
| MySQL | 5.7, 8.0, 8.4, 9.0 | mariadb-dump or mysqldump | ✅ |
| MariaDB | 10.x, 11.x | mariadb-dump or mysqldump | ✅ |
| PostgreSQL | 12 to 18 | pg_dump | ✅ |
| MongoDB | 4.x to 8.x | mongodump | ✅ |
| Redis | 2.8+ | redis-cli --rdb | Manual |
| Valkey | 7.2+ | redis-cli --rdb | Manual |
| SQLite | 3.x | sqlite3 .backup, stores the database file | ✅ |
| MSSQL | 2017, 2019, 2022, Azure SQL Edge | BACKUP DATABASE | ✅ |
| Azure SQL Database (beta) | Single database, elastic pool | SqlPackage BACPAC export | ✅ (drops the target first) |
| Firebird (beta) | 3.x, 4.x, 5.x | gbak | ✅ (pre-configured aliases) |
Directory Sources
The Connections page has a Directory sources tab: storage adapters whose folders can be backed up as files rather than as a database dump. They use the same backends as Storage Destinations but are configured as their own adapters, because the two roles use the configured path differently - a destination writes backup and chain folders into it, a source only reads folders out of it. An adapter is one or the other, never both.
To use the same server for both, pick Create as directory source in the menu of the destination, or Create as backup destination here, and adjust the path on the copy.
One backend exists only on this side: Docker Volumes reads the contents of Docker volumes, which is data a container holds and nothing else can reach. It cannot be a destination, so it is offered as a directory source only.
Database Explorer
Beyond configuring sources for backups, DBackup includes a Database Explorer that lets you browse live databases, tables, and data directly from the UI — no separate database client needed. See Database Explorer.
Adding a Source
- Navigate to Connections → Databases → New database
- Select the database type
- Under How DBackup connects, pick Direct or Over SSH (see below). The parts that depend on it appear once you have.
- Fill in the parts listed on the left: host, port and Login, and over SSH the SSH server as well. A check marks each part that has everything it needs.
- Click Test connection to verify, then Create database. A database is tested once more before it is created, and you are asked before saving one that cannot connect.
Which databases to back up is picked in the job that uses the source.
Connection Modes
DBackup supports two connection modes for most database types:
| Mode | Description | Use Case |
|---|---|---|
| Direct | DBackup connects directly to the database via TCP | Database is on the same network / Docker network or connected via VPN (recommended) |
| Over SSH | DBackup connects via SSH and runs database tools on the remote host | Database is on a remote server, not directly reachable, or no local CLI tools installed |
SSH Mode
In SSH mode, DBackup connects to the remote server via SSH and executes database CLI tools (e.g., mariadb-dump, pg_dump) directly on that server. The output comes back over the same connection, streamed or as a temporary file DBackup fetches and deletes, depending on the tool. This is not an SSH tunnel - the database tools run remotely. The form marks Over SSH as beta.
Supported adapters: MySQL, MariaDB, PostgreSQL, MongoDB, Redis, Valkey, SQLite, Firebird, MSSQL
Required: Database CLI Tools on Remote Host
When using SSH mode, the required database client tools must be installed on the remote SSH server. DBackup does not transfer or install any tools - it only executes them. See the individual adapter pages for the specific tools required.
MSSQL is the exception and needs no tools installed: SQL Server writes the backup itself through a T-SQL command, so SSH mode tunnels that connection instead of running anything remotely. It is the only adapter that works this way.
SSH Configuration Fields
| Field | Description | Default | Required |
|---|---|---|---|
| SSH host | SSH server hostname or IP | - | ✅ |
| Port | SSH server port | 22 | ❌ |
| SSH login | An SSH_KEY credential profile with the username and a password, a private key or the SSH agent | - | ✅ |
SSH Agent
To use SSH agent forwarding in Docker, mount the agent socket:
services:
dbackup:
volumes:
- ${SSH_AUTH_SOCK}:/ssh-agent
environment:
- SSH_AUTH_SOCK=/ssh-agentConnection from Docker
When DBackup runs in Docker and your database is on the host:
| Platform | Host Address |
|---|---|
| macOS / Windows (Docker Desktop) | host.docker.internal |
| Linux (Docker Engine) | host.docker.internal with extra_hosts: ["host.docker.internal:host-gateway"] on the DBackup service |
For Docker Compose networks, use the service name as hostname.