What is the best solution for the following scenario?
Branch offices (about 50 sites) will have own MySQL database server on site.
HQ will have a master MySQL database server, which will synchronise the database with all the branch offices. I.e. this master database server will store all the 50 databases synchronised with the branch offices.
Branch offices will only synchronise their own database from the HQ server. They will not get database of other branches.
The synchronisation is real-time, or close to real-time with minimal delay.
The application server can make use of either one of the database servers (branch or HQ). Downtime in either one of the servers will not affect the application as database is available in another server. When the server is bring up, it will catch up with the other server to update its database.
MySQL replication can almost fulfill the requirement, but the HQ server cannot have 50 master servers at the same time.
What are the available solutions? Using 3rd party tools is OK. If it cannot be done with MySQL, what other database sever can do this?
Start Free Trial