第 21 章 MySQL NDB Cluster 7.5 和 NDB Cluster 7.6

目录

MySQL NDB Cluster 是适用于分布式计算环境的 MySQL 的高可用性,高冗余版本。最新的 NDB 群集发行系列使用版本 8 的NDB存储引擎(也称为NDBCLUSTER)来使多台计算机与群集中的 MySQL 服务器和其他软件一起运行。 NDB Cluster 8.0(现在从 8.0.19 版开始作为通用版本(GA)发行版提供)合并了NDB存储引擎的 8.0 版。 GA 发行版仍提供 NDB Cluster 7.6 和 NDB Cluster 7.5,分别使用NDB的 7.6 和 7.5 版本。以前的 GA 版本仍可供生产使用,NDB Cluster 7.4 和 NDB Cluster 7.3 分别包含NDB版本 7.4 和 7.3. 不再支持或维护 NDB 7.2 和较早的发行系列

Oracle 构建的标准 MySQL Server 5.7 二进制文件中不包含对NDB存储引擎的支持。相反,Oracle 的 NDB Cluster 二进制文件的用户应升级到适用于受支持平台的 NDB Cluster 的最新二进制版本-其中包括应与大多数 Linux 发行版一起使用的 RPM。从源构建的 NDB Cluster 用户应使用为 NDB Cluster 提供的源。 (可以在此处获取源的位置在本节的后面列出.)

Important

MySQL NDB Cluster 不支持 InnoDB 集群,必须使用带有InnoDB存储引擎的 MySQL Server 5.7 以及 NDB Cluster 发行版中未包含的其他应用程序来部署 InnoDB 集群。 MySQL Server 5.7 二进制文件不能与 MySQL NDB Cluster 一起使用。有关部署和使用 InnoDB 集群的更多信息,请参见第 20 章,InnoDB 集群第 21.1.6 节“使用 InnoDB 和 NDB 群集的 MySQL 服务器”讨论了NDBInnoDB存储引擎之间的区别。

本章包含有关通过 5.7.31-ndb-7.5.20 发行的 NDB Cluster 7.5 版本和通过 5.7.31-ndb-7.6.16 发行的 NDB Cluster 7.6 版本的信息,这两种版本都是 Producing 支持的通用(GA)版本。 NDB Cluster 8.0 是当前的 GA 版本,建议用于新部署。有关 NDB Cluster 8.0 的信息,请参见NDB 群集中的新增功能。有关 NDB 群集 7.5 和 7.6 的类似信息,请参见第 21.1.4 节“ NDB 群集中的新增功能”。 NDB Cluster 7.4 和 7.3 是 GA 仍在 Producing 支持的早期 GA 版本。参见MySQL NDB 群集 7.3 和 NDB 群集 7.4

支持的平台. NDB 群集当前可用并在许多平台上受支持。有关特定版本的 os 版本,os 发行版和硬件平台的特定支持级别,请参阅https://www.mysql.com/support/supportedplatforms/cluster.html

可用性. NDB 群集二进制和源程序包可用于https://dev.mysql.com/downloads/cluster/支持的平台。

NDB Cluster 发行号. NDB Cluster 遵循与主线 MySQL Server 5.7 系列发行版本稍有不同的发行模式。在本手册和其他 MySQL 文档中,我们标识了这些版本以及以后的 NDB Cluster 版本,这些版本使用以“ NDB”开头的版本号。该版本号是该版本中使用的NDBCLUSTER存储引擎的版本号,而不是 NDB Cluster 版本所基于的 MySQL 服务器版本的版本号。

NDB Cluster 软件中使用的版本字符串. NDB Cluster 程序显示的版本字符串使用以下格式:

mysql-mysql_server_version-ndb-ndb_engine_version
shell> mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.31-ndb-7.5.20 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> SELECT VERSION()\G
*************************** 1. row ***************************
VERSION(): 5.7.31-ndb-7.5.20
1 row in set (0.00 sec)

此版本字符串也显示在ndb_mgmClient 端的SHOW命令的输出中:

ndb_mgm> SHOW
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)]     2 node(s)
id=1    @10.0.10.6  (5.7.31-ndb-7.5.20, Nodegroup: 0, *)
id=2    @10.0.10.8  (5.7.31-ndb-7.5.20, Nodegroup: 0)

[ndb_mgmd(MGM)] 1 node(s)
id=3    @10.0.10.2  (5.7.31-ndb-7.5.20)

[mysqld(API)]   2 node(s)
id=4    @10.0.10.10  (5.7.31-ndb-7.5.20)
id=5 (not connected, accepting connect from any host)

版本字符串标识从其分支了 NDB Cluster 版本的主线 MySQL 版本以及所使用的NDB存储引擎的版本。例如,NDB 7.5.4(第一个 NDB 7.5 GA 版本)的完整版本字符串为mysql-5.7.16-ndb-7.5.4。由此我们可以确定以下内容:

新的 NDB Cluster 版本根据NDB存储引擎中的更新进行编号,并且不一定与主线 MySQL Server 版本以一对一的方式对应。例如,NDB 7.5.4(如前所述)基于 MySQL 5.7.16,而 NDB 7.5.3 基于 MySQL 5.7.13(版本字符串:mysql-5.7.13-ndb-7.5.3)。

与标准 MySQL 5.7 版本兼容. 虽然许多标准 MySQL 架构和应用程序都可以使用 NDB Cluster 运行,但是,使用 NDB Cluster 运行时,未修改的应用程序和数据库架构也可能会有些不兼容或性能不佳(请参见第 21.1.7 节“ NDB 群集的已知限制” )。所有这些问题都可以克服,但这也意味着您不太可能无法在不考虑使用NDB存储引擎的情况下切换现有的应用程序数据存储(当前使用例如MyISAMInnoDB)来使用NDB存储引擎。模式,查询和应用程序中的更改。此外,MySQL Server 和 NDB Cluster 代码库之间的差异很大,因此标准mysqld不能替代 NDB Cluster 随附的mysqld版本。

NDB Cluster 开发源树. NDB Cluster 开发树也可以从https://github.com/mysql/mysql-server访问。

维护在https://github.com/mysql/mysql-server的 NDB 群集开发源已根据 GPL 许可。有关使用 Git 获取 MySQL 源并自行构建它们的信息,请参见第 2.9.5 节“使用开发源树安装 MySQL”

Note

与 MySQL Server 5.7 一样,NDB Cluster 7.5 和 NDB Cluster 7.6 版本是使用 CMake 构建的。

NDB Cluster 8.0 从 NDB 8.0.19 开始作为通用版本发布,建议用于新的部署。有关更多信息,请参见NDB 群集中的新增功能。 NDB Cluster 7.6 和 7.5 是 GA 仍支持生产的早期 GA 版本。 NDB Cluster 7.4 和 7.3 是 GA 仍支持生产的早期 GA 版本,尽管我们建议用于生产的新部署使用 NDB Cluster 8.0. 参见MySQL NDB 群集 7.3 和 NDB 群集 7.4

随着 NDB Cluster 的不断 Developing,本章的内容可能会进行修订。有关 NDB 群集的其他信息,可以在 MySQL 网站http://www.mysql.com/products/cluster/上找到。

其他资源. 有关 NDB 群集的更多信息可以在以下位置找到:

首页