MySQL Forums
Forum List  »  Replication

Re: Setting up Circular replication in existing replication infrastructure
Posted by: Rick James
Date: September 27, 2012 07:51AM

Read scaling --> One Master, many Slaves. Plus some form of load balancer in front of the Slaves so that the 'next' user asks to hit a single address, but gets a 'random' slave. DNS can handle such, or you could get fancier.

Enhancing that for "fault tolerance/recovery" -->

Plan A:

Two Masters ("dual master"), only one of them writable at a time. They are each "slave" to the other (although data is only flowing one way, until failover).

Then, for read scaling, have slave(s) hanging off each Master. If either Master dies, the slaves hanging off it will become stale, and should be removed from the read rotation until the system is back to normal.

Plan B:

MHA: http://yoshinorimatsunobu.blogspot.com/2011/07/announcing-mysql-mha-mysql-master-high.html
This would involve one Master and any number of Slaves. Failover will promote the most up-to-date Slave to be Master. Then MHA handles reconnecting the remaining slaves to the 'new' Master.

The Slaves hang _immediately_ off the Master (no "relays", no "dual master").

I have not tried it, but I have studied it and have found no flaws. It should not have, for example, let GIT die like it did recently.

Options: ReplyQuote


Subject
Views
Written By
Posted
Re: Setting up Circular replication in existing replication infrastructure
920
September 27, 2012 07:51AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.