Oracle 5.0 Reference Manual page 2902

Table of Contents

Advertisement

In traditional MySQL replication, a master MySQL server updates one or more slaves. Transactions
are committed sequentially, and a slow transaction can cause the slave to lag behind the master.
This means that if the master fails, it is possible that the slave might not have recorded the last few
transactions. If a transaction-safe engine such as
complete on the slave or not applied at all, but replication does not guarantee that all data on the
master and the slave will be consistent at all times. In MySQL Cluster, all data nodes are kept in
synchrony, and a transaction committed by any one data node is committed for all data nodes. In the
event of a data node failure, all remaining data nodes remain in a consistent state.
In short, whereas standard MySQL replication is asynchronous, MySQL Cluster is synchronous.
We have implemented (asynchronous) replication for Cluster in MySQL 5.1 and later. MySQL Cluster
Replication (also sometimes known as "geo-replication") includes the capability to replicate both
between two MySQL Clusters, and from a MySQL Cluster to a non-Cluster MySQL server. However,
we do not plan to backport this functionality to MySQL 5.0. See
B.10.4: Do I need any special networking to run MySQL Cluster? How do computers in a cluster
communicate?
MySQL Cluster is intended to be used in a high-bandwidth environment, with computers connecting
using TCP/IP. Its performance depends directly upon the connection speed between the cluster's
computers. The minimum connectivity requirements for MySQL Cluster include a typical 100-megabit
Ethernet network or the equivalent. We recommend you use gigabit Ethernet whenever available.
The faster SCI protocol is also supported, but requires special hardware. See
High-Speed Interconnects with MySQL
B.10.5: How many computers do I need to run a MySQL Cluster, and why?
A minimum of three computers is required to run a viable cluster. However, the minimum
recommended number of computers in a MySQL Cluster is four: one each to run the management
and SQL nodes, and two computers to serve as data nodes. The purpose of the two data nodes is to
provide redundancy; the management node must run on a separate machine to guarantee continued
arbitration services in the event that one of the data nodes fails.
To provide increased throughput and high availability, you should use multiple SQL nodes (MySQL
Servers connected to the cluster). It is also possible (although not strictly necessary) to run multiple
management servers.
B.10.6: What do the different computers do in a MySQL Cluster?
A MySQL Cluster has both a physical and logical organization, with computers being the physical
elements. The logical or functional elements of a cluster are referred to as nodes, and a computer
housing a cluster node is sometimes referred to as a cluster host. There are three types of nodes, each
corresponding to a specific role within the cluster. These are:
• Management node.
including startup, shutdown, backups, and configuration data for the other nodes. The management
node server is implemented as the application ndb_mgmd; the management client used to control
MySQL Cluster is ndb_mgm. See
Server
Daemon", and
information about these programs.
• Data node.
This type of node stores and replicates data. Data node functionality is handled by
instances of the
NDB
The MySQL Cluster Data Node
• SQL node.
This is simply an instance of MySQL Server (mysqld) that is built with support for
the
storage engine and started with the
NDBCLUSTER
and the
--ndb-connectstring
MySQL 5.0 FAQ: MySQL Cluster
Cluster", for more information about SCI.
This node provides management services for the cluster as a whole,
Section 17.4.2,
Section 17.4.3,
"ndb_mgm
data node process ndbd. For more information, see
Daemon".
option to enable it to connect to a MySQL Cluster management
2882
is being used, a transaction will either be
InnoDB
MySQL Cluster
"ndb_mgmd
— The MySQL Cluster Management
— The MySQL Cluster Management
--ndb-cluster
Replication.
Section 17.3.5, "Using
Client", for
Section 17.4.1,
"ndbd
option to enable the engine

Advertisement

Table of Contents
loading

This manual is also suitable for:

Mysql 5.0

Table of Contents