Link to home
Start Free TrialLog in
Avatar of Matthew Connelly
Matthew Connelly

asked on

Multi Master Mysql

I have an web application running on a single MySQL database.   The users are in remote communities where internet access is not available for hours at a time.  I would like to set up MySQL servers in each of the communities which sync with a centralized master when the internet is available.  The application is reading and writing.   Each community is mostly accessing its own data, so there would be little conflict.  I have looked a bit at Amazon database migration service and sharding.  Any ideas?
Avatar of Olatunde Francis Oyeyemi
Olatunde Francis Oyeyemi

If I get you clearly you are trying to do clients-server application, but client will have their server when there is internet the server speak with the main central server to update itself like reading and writing back, right? If yes, I think you should ask yourself first if intranet application is better since internet is not stable. You can do clients-server intranet web application and make all the clients connect to the master central server at ease.

But if you insist doing it the way you explained above then you need something to check if their is internet connection in PHP, if there is, send data to interact with the central server else stay within client system.
ASKER CERTIFIED SOLUTION
Avatar of gr8gonzo
gr8gonzo
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Could this simply be handled as an offline capable app that syncs when it has internet access?  I'm not sure of the size of your database, but it may work for you.

Have a look at this article to get you started: http://apress.jensimmons.com/v5/pro-html5-programming/ch12.html
Avatar of Matthew Connelly

ASKER

Thanks.  It seems the best way will be through the application or some kind of database scripts running at night.  The purpose of the master is to be able to see the whole system (users in every database).