Deploy MySQL & PostgreSQL sandboxes in seconds.
dbdeployer deploys database servers locally for development and testing — single instances, replication topologies, and full stacks with ProxySQL. No root, no Docker, no hassle.
Originally created by Giuseppe Maxia as a Go rewrite of MySQL-Sandbox (see the original repository). Now maintained by the ProxySQL team with Giuseppe's blessing.
Website · Quick Start · Documentation
curl -s https://github.com/ProxySQL/dbdeployer/master/scripts/dbdeployer-install.sh | bash# Download and unpack MySQL 8.4
dbdeployer downloads get-by-version 8.4 --newest --minimal
dbdeployer unpack mysql-8.4.8-*.tar.xz
# Deploy a single sandbox
dbdeployer deploy single 8.4.8
~/sandboxes/msb_8_4_8/use -e "SELECT VERSION();"
# Deploy replication (1 master + 2 slaves)
dbdeployer deploy replication 8.4.8
~/sandboxes/rsandbox_8_4_8/check_slaves
# Deploy replication + ProxySQL (read/write split)
dbdeployer deploy replication 8.4.8 --with-proxysql
~/sandboxes/rsandbox_8_4_8/proxysql/use_proxyUnlike MySQL, PostgreSQL doesn't distribute pre-compiled tarballs. dbdeployer extracts binaries from .deb packages — no system-wide installation needed, no risk to existing PostgreSQL instances, and you can have multiple versions side by side.
# Download debs (no root, no installation)
apt-get download postgresql-16 postgresql-client-16
# Extract into dbdeployer's binary layout
dbdeployer unpack --provider=postgresql postgresql-16_*.deb postgresql-client-16_*.deb
# Deploy a single sandbox
dbdeployer deploy postgresql 16.13
~/sandboxes/pg_sandbox_*/use -c "SELECT version();"
# Deploy streaming replication
dbdeployer deploy replication 16.13 --provider=postgresqlNote: The
apt-get downloadcommand downloads.debfiles to the current directory without installing anything. Your system is untouched. See the PostgreSQL provider guide for details and alternative installation methods.
| Provider | Single | Replication | Group Replication | ProxySQL Wiring |
|---|---|---|---|---|
| MySQL (8.0, 8.4, 9.x) | ✓ | ✓ | ✓ | ✓ |
| PostgreSQL (12+) | ✓ | ✓ (streaming) | — | ✓ |
| ProxySQL | ✓ | — | — | — |
| Percona Server | ✓ | ✓ | ✓ | ✓ |
| MariaDB | ✓ | ✓ | — | ✓ |
| NDB Cluster | ✓ | ✓ | — | — |
| Percona XtraDB Cluster | ✓ | ✓ | — | — |
- Any topology — single, replication, group replication, fan-in, all-masters
- Multiple databases — MySQL, PostgreSQL, Percona, MariaDB via provider architecture
- ProxySQL integration —
--with-proxysqlwires read/write split into any topology - No root, no Docker — runs entirely in userspace with self-contained directories
- Modern MySQL — full support for 8.4 LTS and 9.x Innovation releases
Full documentation is available at proxysql.github.io/dbdeployer.
- MySQL Single Sandbox — deploy, connect, clean up
- MySQL Replication — master + slaves in one command
- PostgreSQL — deb extraction, single + replication
- ProxySQL Integration — read/write split testing
- MySQL Provider — tarballs, flavors, all topologies
- PostgreSQL Provider — deb binaries, streaming replication, limitations
- ProxySQL Provider — standalone and topology-integrated deployment
- Provider Comparison — capabilities matrix
- Single Sandbox — deploy, connect, manage
- Multiple Sandboxes — independent instances
- Replication — master-slave
- Group Replication — single-primary and multi-primary
- InnoDB Cluster — GR + MySQL Shell + Router
- Fan-In & All-Masters — multi-source replication
- NDB Cluster
- Percona XtraDB Cluster
- Topology Reference — full matrix of topologies, providers, proxies, ports, users, and scripts
- CLI Commands
- Configuration
- Environment Variables
The original wiki documentation is preserved in docs/wiki/ for reference. The website has the up-to-date versions.
Maintained by the ProxySQL team since 2026, with the blessing of original creator Giuseppe Maxia.
Licensed under the Apache License 2.0.