MySQL Shell 8.0 (part of MySQL 8.0)
Before installing a production deployment of InnoDB Cluster, ensure that the server instances you intend to use meet the following requirements.
InnoDB Cluster uses Group Replication and therefore your
server instances must meet the same requirements. See
Group Replication Requirements. AdminAPI
provides the
dba.checkInstanceConfiguration()
method
to verify that an instance meets the Group Replication
requirements, and the
dba.configureInstance()
method to
configure an instance to meet the requirements.
When using a sandbox deployment the instances are configured to meet these requirements automatically.
Group Replication members can contain tables using a storage
engine other than InnoDB
, for
example MyISAM
. Such tables
cannot be written to by Group Replication, and therefore
when using InnoDB Cluster. To be able to write to such
tables with InnoDB Cluster, convert all such tables to
InnoDB
before using the
instance in an InnoDB Cluster.
The Performance Schema must be enabled on any instance which you want to use with InnoDB Cluster.
The provisioning scripts that MySQL Shell uses to configure servers for use in InnoDB Cluster require access to Python. On Windows MySQL Shell includes Python and no user configuration is required. On Unix Python must be found as part of the shell environment. To check that your system has Python configured correctly issue:
$ /usr/bin/env python
If a Python interpreter starts, no further action is
required. If the previous command fails, create a soft link
between /usr/bin/python
and your chosen
Python binary. For more information, see
Supported Languages.
From version 8.0.17, instances must use a unique
server_id
within an
InnoDB Cluster. When you use the
operation, if the Cluster
.addInstance(instance
)server_id
of instance
is already used by an
instance in the cluster then the operation fails with an
error.
From version 8.0.23, instances should be configured to use the parallel replication applier. See Configuring the Parallel Replication Applier.
During the process of configuring an instance for
InnoDB Cluster, the majority of the system variables
required for using an instance are configured. But
AdminAPI does not configure the
transaction_isolation
system variable, which means that it defaults to
REPEATABLE READ
. This does not impact a
single-primary cluster, but if you are using a multi-primary
cluster then unless you rely on REPEATABLE
READ
semantics in your applications, we recommend
using the READ COMMITTED
isolation level.
See Group Replication Limitations.