MySQL Clustering Options Explained

master-slave-replicationMySQLmysql-innodb-clusterndbcluster

I have two MySQL Database Servers i.e.
One is Active Server –> Master and second is Passive Server –> Slave.

And as we know we have 3-4 MySQL HR,DR Solutions / Clustering options.For example

01 : MySQL NDB Cluster

02 : MySQL InnoDB Cluster

03 : MySQL Cluster Carrier Grade

My First Question is i want to deploy One Active & One Passive MySQL Server so which Cluster Option / HA,DR Option will be fit for above mentioned scenario ?

My Second Question is suppose i have deploy One Active & One Passive MySQL Server in any above mentioned Cluster Option / HA,DR Option. So what about licensing ? I have to buy license of MySQL Servers/ Cluster ?

Regards,

Mubashar Iftikhar

Best Answer

Two servers cannot give you as much HA as three. And the three need to be geographically spread across 3 data centers. That way, if a datacenter fails (and they do), the other two have a quorum and can continue running.

If you have already implemented your application using InnoDB, then the simplest is to go with 02: InnoDB Cluster. Yes, it can have one active and multiple passive nodes. I don't think there are $$ licenses for 01 and 02.

Another option is (again, no $$ license) is to have 3+ servers using InnoDB, plus Galera's clustering solution. (Or MariaDB, which has Galera builtin.)