Database Sync
Synchronize MySQL, MariaDB or PostgreSQL databases between local and remote systems in nine modes (receiver, sender, proxy, dump, import, sync).
Sync MySQL, MariaDB or PostgreSQL databases and files between systems over SSH/rsync/SFTP — with automatic framework credential detection
# Install via Composer
composer require konradmichalik/php-sync-tool
# Sync a database from production to local using a config file
bin/sync-tool -f config.yamlPoint path at a framework's config file and credentials are detected automatically:
| Framework | Version | Config File |
|---|---|---|
| TYPO3 | 7.6 – 12.x | LocalConfiguration.php / AdditionalConfiguration.php or .env |
| TYPO3 | ≥ 13 | config/system/settings.php / additional.php or .env |
| Symfony | ≥ 3.4 | .env (DATABASE_URL) |
| Symfony | ≤ 2.8 | parameters.yml |
| Drupal | ≥ 8.0 | settings.php (via drush) |
| WordPress | ≥ 5.0 | wp-config.php |
| Laravel | ≥ 4.0 | .env |
php-sync-tool is a PHP port of the Python db-sync-tool, built for teams that want database synchronization without a Python runtime on their build and deploy hosts. It targets feature parity with the original while integrating naturally into Composer-based PHP projects. See Coming from db-sync-tool if you already use the Python tool.