This project is a result as a babymarkt.de Slacktime project by Arkadius Jonczek to synchronize internal development databases.
You can synchronize your data (e.g. MySQL Databases) using different connection adapters (e.g. JSON-RPC).
You can use a direct connection to your data (e.g. MySQL Server) or you can use a adapter (e.g. JSON-RPC) if you do not have direct access to your data (e.g. MySQL Server).
The idea was to build an extensible data-sync framework. So you can write custom actions, data drivers and connection adapters.
The data-sync project supports the following drivers and adapters for now.
- MySQL
- Direct (PDO)
- JSON-RPC
Clone the github repository.
git clone [email protected]:Baby-Markt/data-sync.git
Create a parameters.yml file for the data sync configuration.
cp app/config/parameters.yml.dist app/config/parameters.yml
Start server and client docker containers:
./server.sh up -d
./client.sh up -d
Connect to server and client mysql server:
Server: 127.0.0.1:33060
Client: 127.0.0.1:33061
User: root
Password: root
Database: datasync
Start sync from server to client:
./sync.sh
Shutdown docker containers after tests:
./client.sh down
./server.sh down
php app/console datasync:sync
- Open "docker/server/images/php-fpm/php.ini"
- Set "xdebug.remote_host" to local ip (use ifconfig)
- Go to "Preferences -> Languages & Frameworks -> PHP -> Debug"
- Set Xdebug Port to 9999
- Add PHP Remote Debug Entry