HiveBrain v1.2.0
Get Started
← Back to all entries
patternsqlMinor

MySQL H.A with automatic failover

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
withautomaticmysqlfailover

Problem

MySQL has a lot of different highly available solutions, I would like to know what are the differences between all the current implementations, here are the implementations that look currently up to date :

  • MySQL Group Replication (by Oracle)



  • MySQL NDB Cluster (by Oracle)



  • Galera Cluster (by Galera)



  • XtraDB Cluster (by Percona)



  • MySQL Fabric Cluster (by Oracle)



  • MySQL Orchestrator (by Github)



What would be the recommended options (or any others) for a high available setup with automatic failover ? (For something equivalent of the SQL Server DB Mirroring with synchronous replication)

Solution

Galera == PXC == MariaDB w/Galera -- These are close to the same.
For HA, you need 1 (or more) node in each of 3 datacenters. (Think earthquakes, tornados, floods, even datacenter outages -- which do happen.)

Oracle's Group Replication is quite new, but has a lot of promise.

Oracle's "Fabric" is probably being abandoned. (Probably because of a hard-to-solve single-point-of-failure.)

Orchestrator is very good at failing over arbitrary trees (think relay-servers) of lots (even hundreds) of slaves. Not sure about Master failover. (See lectures from Booking.com.)

MHA is pretty good -- But when it discovers a "split brain" situation, it requires manual intervention.

NDB Cluster has a number of different things in its "engine". That is, it is not a 'drop-in' replacement for InnoDB, which all of the rest support. For one thing, it employs "eventual consistency", wherein you need to specify how to resolve conflicts.

I think the Galera-based solutions, plus Group replication are the only ones that will automatically repair a failed server when it is brought back up. (I could be wrong here.)

My preference today: Percona's PXC or MariaDB with Galera -- each builds in and supports Galera. But I am keeping my eye on Group Replication.

Context

StackExchange Database Administrators Q#165440, answer score: 4

Revisions (0)

No revisions yet.