MySQL NDB Cluster 使用带有
NDB
存储引擎的 MySQL 服务器。NDB
Oracle 构建的标准 MySQL Server 5.6 二进制文件中不包含对存储引擎的支持
。相反,来自 Oracle 的 NDB Cluster 二进制文件的用户应该升级到支持平台的 NDB Cluster 的最新二进制版本——这些包括应该适用于大多数 Linux 发行版的 RPM。从源构建的 NDB Cluster 用户应该使用为 NDB Cluster 提供的源。(可以获取资源的位置在本节后面列出。)
支持的平台。 NDB Cluster 目前在许多平台上可用并受支持。有关操作系统版本、操作系统发行版和硬件平台的特定组合的确切支持级别,请参阅 https://www.mysql.com/support/supportedplatforms/cluster.html。
可用性。 NDB Cluster 二进制文件和源包可从https://mysql.net.cn/downloads/cluster/获得支持的平台。
NDB Cluster 版本号。
NDB Cluster 遵循与主线 MySQL Server 5.6 系列版本略有不同的发布模式。在本
手册和其他 MySQL 文档中,我们使用以“ NDB ”开头的版本号来标识这些和以后的 NDB Cluster 版本。此版本号是版本中NDBCLUSTER
使用的存储引擎的版本号,而不是 NDB Cluster 版本所基于的 MySQL 服务器版本号。
NDB Cluster 软件中使用的版本字符串。 NDB Cluster 程序显示的版本字符串使用以下格式:
mysql-mysql_server_version-ndb-ndb_engine_version
mysql_server_version
表示 NDB Cluster 版本所基于的 MySQL 服务器的版本。对于所有 NDB Cluster 7.3 和当前的 NDB Cluster 7.4 版本,这是“ 5.6 ”。
ndb_engine_version
是此版本
NDB
的 NDB Cluster 软件使用的存储引擎版本。您可以看到在
mysql客户端中使用的这种格式,如下所示:
$> mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.51-ndb-7.4.39 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> SELECT VERSION()\G
*************************** 1. row ***************************
VERSION(): 5.6.51-ndb-7.4.39
1 row in set (0.00 sec)
此版本字符串也显示在
ndb_mgmSHOW
客户端命令的输出中
:
ndb_mgm> SHOW
Connected to Management Server at: localhost:1186
Cluster Configuration
---------------------
[ndbd(NDB)] 2 node(s)
id=1 @10.0.10.6 (5.6.51-ndb-7.4.39, Nodegroup: 0, *)
id=2 @10.0.10.8 (5.6.51-ndb-7.4.39, Nodegroup: 0)
[ndb_mgmd(MGM)] 1 node(s)
id=3 @10.0.10.2 (5.6.51-ndb-7.4.39)
[mysqld(API)] 2 node(s)
id=4 @10.0.10.10 (5.6.51-ndb-7.4.39)
id=5 (not connected, accepting connect from any host)
版本字符串标识 NDB Cluster 版本分支的主线 MySQL 版本以及使用的
NDB
存储引擎版本。例如,NDB 7.4.4(第一个 NDB Cluster 7.4 GA 版本)的完整版本字符串是mysql-5.6.23-ndb-7.4.4
. 由此我们可以确定以下几点:
由于前面的版本字符串部分
-ndb-
是基本的 MySQL 服务器版本,这意味着 NDB 7.4.4 派生自 MySQL 5.6.23,并且包含从 MySQL 5.6 到 MySQL 5.6.23 的所有功能增强和错误修复。由于后面的版本字符串部分 表示(或 )存储引擎
-ndb-
的版本号,因此 NDB 7.4.4 使用 存储引擎的版本 7.4.4。NDB
NDBCLUSTER
NDBCLUSTER
新的 NDB Cluster 版本根据
NDB
存储引擎中的更新进行编号,并且不一定与主线 MySQL Server 版本一一对应。例如,NDB 7.4.4(如前所述)基于 MySQL 5.6.23,而 NDB 7.4.3 基于 MySQL 5.6.22(版本字符串:)mysql-5.6.22-ndb-7.4.3
。
与标准 MySQL 5.6 版本的兼容性。
虽然许多标准的 MySQL 模式和应用程序可以使用 NDB Cluster 工作,但未修改的应用程序和数据库模式在使用 NDB Cluster 运行时可能会稍微不兼容或性能不佳(请参阅
第 18.2.7 节,“NDB Cluster 的已知限制”) ). 大多数这些问题都可以克服,但这也意味着您不太可能能够切换现有的应用程序数据存储——例如,当前使用的,MyISAM
或InnoDB
——使用
NDB
存储引擎,不允许更改模式、查询和应用程序。此外,MySQL 服务器和 NDB Cluster 代码库有很大差异,因此标准
mysqld不能作为NDB Cluster 提供
的mysqld版本的替代品。
NDB Cluster 开发源代码树。 NDB Cluster 开发树也可以从 https://github.com/mysql/mysql-server访问。
在https://github.com/mysql/mysql-server 维护的 NDB Cluster 开发源 是根据 GPL 许可的。有关使用 Git 获取 MySQL 源代码并自行构建它们的信息,请参阅 第 2.9.5 节,“使用开发源代码树安装 MySQL”。
与 MySQL Server 5.6 一样,NDB Cluster 7.3 和 NDB Cluster 7.4 版本是使用CMake构建的。
NDB Cluster 8.0 从 NDB 8.0.19 开始作为一般可用性版本提供,建议用于新部署;有关更多信息,请参阅 NDB Cluster 中的新增功能。NDB Cluster 7.6 和 7.5 是之前的 GA 版本,在生产中仍然受支持;有关 NDB Cluster 7.6 的信息,请参阅 NDB Cluster 7.6 中的新增功能。有关 NDB Cluster 7.5 的类似信息,请参阅 What is New in NDB Cluster 7.5。NDB Cluster 7.4 和 7.3 是以前的 GA 版本,在生产中仍然受支持,尽管我们建议新的生产部署使用 NDB Cluster 8.0。
本章代表正在进行的工作,随着 NDB Cluster 的不断发展,其内容可能会进行修订。有关 NDB Cluster 的其他信息可以在 MySQL 网站http://www.mysql.com/products/cluster/上找到。
其他资源。 可以在以下位置找到有关 NDB Cluster 的更多信息:
有关 NDB Cluster 的一些常见问题的答案,请参阅第 A.10 节,“MySQL 5.6 FAQ:NDB Cluster”。
NDB 集群论坛:https ://forums.mysql.com/list.php?25 。
许多 NDB Cluster 用户和开发人员在博客上记录了他们使用 NDB Cluster 的经验,并通过 PlanetMySQL提供了这些信息。