Supported databases
Which databases does DBDock support?
DBDock supports nine connection types: PostgreSQL, MySQL, MariaDB, SQL Server, CockroachDB, Amazon Redshift, TimescaleDB, MongoDB, and Redis.
The PostgreSQL family uses
pg_dump / pg_restore. MySQL and MariaDB use mysqldump. SQL Server uses mssql-scripter and sqlcmd. Redis uses a bundled worker that streams a binary DUMP/RESTORE format.
MongoDB has no native backup engine in DBDock today. Use it for analysis and MongoDB ↔ PostgreSQL migration.
Which Postgres versions are supported?
Whatever your installedpg_dump supports — in practice Postgres 12+. Match the client tool version to your server version.
Does DBDock support MySQL, MariaDB, SQL Server, or Redis backups?
Yes. Backup, restore, and same-engine copy jobs work for MySQL, MariaDB, SQL Server, and Redis. Native client tools must be on yourPATH (mysqldump, mssql-scripter, sqlcmd, etc.).
General
Is DBDock free?
Yes — MIT licensed, free forever, self-hosted CLI. No vendor lock-in. The hosted dashboard at dbdock.xyz has a free tier with managed storage included.Who’s behind DBDock?
Created by Naheem Olaide. Open-source project, contributions welcome on GitHub.Is DBDock production-ready?
Backup and restore pipelines are stable across PostgreSQL, MySQL, MariaDB, SQL Server, and Redis. Cross-database migration (MongoDB ↔ Postgres) is newer — run a dry run before production use.How is DBDock different from pg_dump?
pg_dump is the engine for PostgreSQL-family databases. DBDock builds around it (and equivalent tools for other engines) with:
- Storage adapters (local, S3, R2, Cloudinary)
- Compression and encryption pipelines
- Retention and scheduling
- Restore UX with filtering (PostgreSQL family)
- Cross-database migration (MongoDB ↔ Postgres)
- Same-engine copy jobs for MySQL, MariaDB, SQL Server, and Redis
Is there a hosted DBDock?
The CLI is self-hosted. The DBDock web app adds a dashboard, managed storage, schedules, alerts, analytics, and billing tiers on top of the same engine layer.Is there a GUI?
The hosted dashboard at dbdock.xyz covers connections, backups, restores, copy jobs, migrations, schedules, and alerts. The CLI remains the option for scripts, CI, and fully self-hosted workflows.Installation
Can I use DBDock without installing it?
Yes —npx dbdock <command> works without a global install.
Does DBDock need Node.js?
Yes, Node 18 or later. If you can’t install Node, a Docker image is the easiest workaround.What client tools do I need?
At minimum, install the tools for the engines you use:- PostgreSQL family —
pg_dump,pg_restore,psql - MySQL / MariaDB —
mysqldump,mysql - SQL Server —
mssql-scripter,sqlcmd - Redis — bundled worker (no extra install)
- MongoDB migration — uses the
mongodbdriver at runtime
npx dbdock test to validate your setup.
Backup behavior
How long does a backup take?
Depends on database size, compression level, and network. Rough ballpark:- 100 MB DB, local storage: ~2–5 seconds
- 1 GB DB, S3 us-east-1: ~30–60 seconds
- 10 GB DB, S3 cross-region: ~5–10 minutes
Can I back up a live production database?
Yes — logical dumps use MVCC or engine equivalents so reads and writes continue. Expect slightly higher CPU during the dump and possible replication lag on replicas. Run during low-traffic windows when you can.Can I back up only some tables?
PostgreSQL-family restores support selective restore from custom-format dumps. For partial backups at dump time, use engine flags directly (pg_dump --table=..., etc.) and upload the result yourself. Table-level backup in the CLI is on the issue tracker.
Does DBDock support incremental backups?
PostgreSQL logical dumps are full each time. For WAL-based incremental backup, use PostgreSQL’s built-in WAL archiving separately. Cross-database migration supports incremental mode — see Incremental migration.Restore
Can I restore to a different database?
Yes. Indbdock restore, choose “New Database Instance (Migrate)” and enter target connection details. Same-engine copy also works via dbdock copydb. See dbdock restore and dbdock copydb.
Can I restore only specific tables?
PostgreSQL custom-format dumps support selective restore throughpg_restore. Other engines restore whole databases. Restore into a temporary database and extract what you need if partial restore isn’t available for your engine.
Can I preview a backup’s contents?
Not via DBDock currently for all engines. Restore to a temporary database and query it, or use native tools (pg_restore --list for PostgreSQL custom format).
Storage
Can I use multiple storage providers simultaneously?
No — one active provider per config. Workarounds:- Run multiple configs (different
dbdock.config.jsonpaths viaDBDOCK_CONFIG_PATH) - Sync primary storage to a secondary (S3 cross-region replication, rclone, etc.)
How do I migrate backups between providers?
DBDock doesn’t have a built-in migrator. Options:- AWS CLI / rclone — copy files at the storage layer
- Manual —
dbdock list, download each, re-upload to the new provider - Accept split history — switch providers; new backups go to the new location
Do backups work with S3 Object Lock?
Yes. Object Lock is set at the bucket level; DBDock writes objects normally. Retention policies (dbdock cleanup) can’t delete locked objects — coordinate both retention systems.
Encryption
What’s the encryption algorithm?
AES-256-GCM with a versioned backup format. Keys derive via PBKDF2-SHA512 with 100,000 iterations. Legacy backups use AES-256-CBC and still restore.Can I use multiple encryption keys?
Not simultaneously. DBDock reads one key at a time. For rotating keys, see Key rotation.Can I disable encryption for some backups?
Yes — pass--no-encrypt:
Does encryption slow backups down?
Measurably, but not dramatically. AES-256 on modern CPUs is fast (AES-NI). Most time is still network and compression.Migration
Can I migrate MongoDB to PostgreSQL?
Yes. See Migration overview.Can I migrate MySQL or SQL Server to PostgreSQL?
Not as cross-engine migration. MySQL and SQL Server support same-engine backup, restore, and copy. Cross-engine migration is MongoDB ↔ PostgreSQL only today.What about live replication?
DBDock migration is batch-oriented — not live replication. For CDC-style streaming, use Debezium, Airbyte, or similar.Development
Does DBDock have a TypeScript SDK?
Yes. All programmatic APIs have TypeScript definitions. See SDK overview.Can I extend DBDock with custom storage providers?
The four built-in providers (local, S3, R2, Cloudinary) are hardcoded. Adding a new provider means contributing a new adapter — open a PR.Where do I report bugs?
- GitHub issues
- Security issues privately via security advisory
Still have questions?
GitHub Discussions
Ask the community.
Troubleshooting
Common issues.

