MySQL InnoDB cluster is a collection of products that work together to provide a complete High Availability solution for MySQL. A group of MySQL servers can be configured to create a cluster using MySQL Shell. In the default single-primary mode, the cluster of servers has a single read-write primary. Multiple secondary servers are replicas of the primary. Creating a cluster with at least three servers ensures a high availability cluster. A client application is connected to the primary via MySQL Router. If the primary fails, a secondary is automatically promoted to the role of primary, and MySQL Router routes requests to the new primary. Advanced users can also configure a cluster to have multiple-primaries.
InnoDB cluster does not provide support for MySQL NDB Cluster.
NDB Cluster depends on the
engine as well as a number of programs specific to NDB Cluster which
are not furnished with MySQL Server 5.7;
NDB is available only as part of the MySQL
NDB Cluster distribution. In addition, the MySQL server binary
(mysqld) that is supplied with MySQL Server
5.7 cannot be used with NDB Cluster. For more
information about MySQL NDB Cluster, see
Chapter 21, MySQL NDB Cluster 7.5 and NDB Cluster 7.6.
Section 21.1.5, “MySQL Server Using InnoDB Compared with NDB Cluster”, provides information
about the differences between the
NDB storage engines.
To provide a highly available database solution, InnoDB cluster uses the following MySQL technologies:
MySQL Router 2.1.3 or higher. Caches the metadata of the InnoDB cluster and routes read/write client requests to the current primary. If the primary instance becomes unavailable, MySQL Router automatically routes client requests to a promoted secondary (the new primary).
MySQL Server 5.7.17 or higher. This provides the MySQL Group Replication mechanism to allow data to be replicated within the cluster, with built-in failover. For more information on MySQL Group Replication, see Chapter 17, Group Replication which explains the technical details used by InnoDB cluster.
An overview of how these technologies work together is shown in the following diagram: