本节涵盖了使用 Oracle 提供的 RPM 软件包安装 NDB 集群每种类型节点所需的可执行文件的步骤。
作为本节中描述的方法的替代方案,Oracle 提供了与多种常见 Linux 发行版兼容的 MySQL 存储库 для NDB 集群。有两个可用的存储库,列举如下:
-
对于使用 yum 或 dnf 的发行版,可以使用 MySQL Yum 存储库 для NDB 集群。请参阅 使用 Yum 存储库安装 MySQL NDB 集群,以获取说明和更多信息。
-
对于 SLES,可以使用 MySQL SLES 存储库 для NDB 集群。请参阅 使用 SLES 存储库安装 MySQL NDB 集群,以获取说明和更多信息。
RPM 文件适用于 32 位和 64 位 Linux 平台。这些 RPM 文件的文件名遵循以下模式:
mysql-cluster-community-data-node-8.3.0-1.el7.x86_64.rpm
mysql-cluster-license-component-ver-rev.distro.arch.rpm
license:= {commercial | community}
component: {management-server | data-node | server | client | other—see text}
ver: major.minor.release
rev: major[.minor]
distro: {el6 | el7 | sles12}
arch: {i686 | x86_64}
license
表示 RPM 是否来自商业或社区版本的 NDB 集群。在本节的其余部分,我们假设您正在安装社区版本。
可能的 component
值及其描述可以在以下表格中找到:
表 25.5 NDB 集群 RPM 分发组件
Component | Description |
---|---|
auto-installer (DEPRECATED) |
NDB 集群自动安装程序;请参阅 NDB 集群自动安装程序(不再支持),以获取使用说明 |
client |
MySQL 和 NDB 客户端程序;包括 mysql 客户端、ndb_mgm 客户端和其他客户端工具 |
common |
MySQL 服务器需要的字符集和错误信息 |
data-node |
ndbd 和 ndbmtd 数据节点二进制文件 |
devel |
MySQL 客户端开发所需的头文件和库文件 |
embedded |
嵌入式 MySQL 服务器 |
embedded-compat |
向后兼容的嵌入式 MySQL 服务器 |
embedded-devel |
嵌入式 MySQL 开发所需的头文件和库文件 |
java |
ClusterJ 应用程序所需的 JAR 文件 |
libs |
MySQL 客户端库 |
libs-compat |
向后兼容的 MySQL 客户端库 |
management-server |
NDB 集群管理服务器 (ndb_mgmd) |
memcached |
支持 ndbmemcache 所需的文件 |
minimal-debuginfo |
用于开发使用该包或调试该包的调试信息 |
ndbclient |
NDB 客户端库,用于运行 NDB API 和 MGM API 应用程序 (libndbclient ) |
ndbclient-devel |
用于开发 NDB API 和 MGM API 应用程序的头文件和其他文件 |
nodejs |
设置 NDB 集群 Node.JS 支持所需的文件 |
server |
MySQL 服务器 (mysqld) 带有 NDB 存储引擎支持,包括相关的 MySQL 服务器程序 |
server-minimal |
MySQL 服务器的最小安装,用于 NDB 和相关工具 |
test |
mysqltest、其他 MySQL 测试程序和支持文件 |
还提供了一个捆绑包(.tar
文件),其中包含了所有 NDB 集群 RPMs,适用于特定的平台和架构。该文件的名称遵循以下模式:
mysql-cluster-license-ver-rev.distro.arch.rpm-bundle.tar
您可以使用 tar 或其他归档工具从该文件中提取单个 RPM 文件。
以下列表显示了安装 NDB 集群三种主要类型节点所需的组件:
-
管理节点:
management-server
-
数据节点:
data-node
-
SQL 节点:
server
和common
此外,还需要安装 client
RPM,以便在至少一个管理节点上提供 ndb_mgm 管理客户端。您可能还想在 SQL 节点上安装它,以便在这些节点上拥有 mysql 和其他 MySQL 客户端程序。
ver
代表 NDB 存储引擎版本号的三个部分,格式为 8.1.x
,在示例中显示为 8.3.0
。x
代表 RPM 修订号,格式为 major
.minor
,在示例中使用 1.1
。
distro
是 Linux 发行版,可能是 rhel5
(Oracle Linux 5、Red Hat Enterprise Linux 4 和 5)、el6
(Oracle Linux 6、Red Hat Enterprise Linux 6)、el7
(Oracle Linux 7、Red Hat Enterprise Linux 7)或 sles12
(SUSE Enterprise Linux 12)。在本节中,我们假设主机运行 Oracle Linux 7、Red Hat Enterprise Linux 7 或等效的(el7
)。
arch
是 i686
(32 位 RPM)或 x86_64
(64 位版本)。在本节中,我们假设使用 64 位平台。
NDB 集群版本号在 RPM 文件名中(显示为 8.3.0
)可能会根据实际使用的版本而变化。所有要安装的集群 RPM 都应该具有相同的版本号。架构也应该适合安装 RPM 的机器;特别是,64 位 RPM(x86_64
)不能与 32 位操作系统(使用 i686
)一起使用。
数据节点。 在要托管 NDB 集群数据节点的计算机上,仅需安装 data-node
RPM。为此,请将该 RPM 复制到数据节点主机,然后以系统根用户身份运行以下命令,根据需要将 RPM 名称替换为从 MySQL 网站下载的 RPM 名称:
$> rpm -Uhv mysql-cluster-community-data-node-8.3.0-1.el7.x86_64.rpm
这将在 /usr/sbin
中安装 ndbd 和 ndbmtd 数据节点二进制文件。可以使用其中任何一个来在该主机上运行数据节点进程。
SQL 节点。 将 server
和 common
RPM 复制到每个要用于托管 NDB 集群 SQL 节点的机器上(server
需要 common
)。以系统根用户身份安装 server
RPM,执行以下命令,根据需要将 RPM 名称替换为从 MySQL 网站下载的 RPM 名称:
$> rpm -Uhv mysql-cluster-community-server-8.3.0-1.el7.x86_64.rpm
这将安装 MySQL 服务器二进制文件 (mysqld), 带有 NDB
存储引擎支持, 在 /usr/sbin
目录中。它还安装了所有需要的 MySQL 服务器支持文件和有用的 MySQL 服务器程序, 包括 mysql.server 和 mysqld_safe 启动脚本 (在 /usr/share/mysql
和 /usr/bin
中, 分别)。RPM 安装程序应该自动处理一般的配置问题 (例如, 创建 mysql
用户和组, 如果需要)。
您必须使用为 NDB 集群发布的 RPM 版本; 标准 MySQL 服务器的 RPM 版本不提供对 NDB
存储引擎的支持。
要管理 SQL 节点 (MySQL 服务器), 您还应该安装 client
RPM, 如下所示:
$> rpm -Uhv mysql-cluster-community-client-8.3.0-1.el7.x86_64.rpm
这将安装 mysql 客户端和其他 MySQL 客户端程序, 如 mysqladmin 和 mysqldump, 到 /usr/bin
。
管理节点. 要安装 NDB 集群管理服务器, 只需要使用 management-server
RPM。将此 RPM 复制到计划托管管理节点的计算机上, 然后以系统根用户身份安装它, 使用以下命令 (将 RPM 的名称更改为从 MySQL 网站下载的 RPM 的名称):
$> rpm -Uhv mysql-cluster-community-management-server-8.3.0-1.el7.x86_64.rpm
这将安装管理服务器二进制文件 ndb_mgmd 到 /usr/sbin
目录中。虽然这只是运行管理节点所需的唯一程序, 但也建议安装 ndb_mgm NDB 集群管理客户端。您可以通过安装 client
RPM 获得该程序, 以及其他 NDB
客户端程序, 如 ndb_desc 和 ndb_config, 如前所述。
请参阅 第 2.5.4 节, “使用 Oracle 提供的 RPM 包在 Linux 上安装 MySQL”, 以获取使用 Oracle 提供的 RPM 包安装 MySQL 的一般信息。
安装完成后, 您仍需要配置集群; 请参阅 第 25.3.3 节, “NDB 集群的初始配置”, 以获取相关信息。
非常重要的是, 所有集群 RPM 都必须具有相同的版本号。架构设计也应该适合安装 RPM 的机器; 特别是, 请注意 64 位 RPM 不能与 32 位操作系统一起使用。
数据节点. 在计划托管集群数据节点的计算机上, 只需要安装 server
RPM。为此, 将此 RPM 复制到数据节点主机, 并以系统根用户身份运行以下命令, 将 RPM 的名称更改为从 MySQL 网站下载的 RPM 的名称:
$> rpm -Uhv MySQL-Cluster-server-gpl-8.3.0-1.sles11.i386.rpm
虽然这将安装所有 NDB 集群二进制文件, 但只有程序 ndbd 或 ndbmtd (都在 /usr/sbin
中) 实际上需要运行 NDB 集群数据节点。
SQL 节点. 在每台计划用于托管集群 SQL 节点的机器上, 安装 server
RPM, 以系统根用户身份执行以下命令, 将 RPM 的名称更改为从 MySQL 网站下载的 RPM 的名称:
$> rpm -Uhv MySQL-Cluster-server-gpl-8.3.0-1.sles11.i386.rpm
这将安装 MySQL 服务器二进制文件 (mysqld),带有 NDB
存储引擎支持,在 /usr/sbin
目录中,以及所有需要的 MySQL 服务器支持文件。它还安装了 mysql.server 和 mysqld_safe 启动脚本(在 /usr/share/mysql
和 /usr/bin
中,分别)。RPM 安装程序应该自动处理一般的配置问题(例如创建 mysql
用户和组,如果需要)。
要管理 SQL 节点(MySQL 服务器),您还应该安装 client
RPM,如下所示:
$> rpm -Uhv MySQL-Cluster-client-gpl-8.3.0-1.sles11.i386.rpm
这将安装 mysql 客户端程序。
管理节点。 要安装 NDB 集群管理服务器,只需要使用 server
RPM。将此 RPM 复制到计划托管管理节点的计算机,然后安装它,作为系统根用户运行以下命令(将 RPM 的名称更改为从 MySQL 网站下载的 server
RPM 的名称):
$> rpm -Uhv MySQL-Cluster-server-gpl-8.3.0-1.sles11.i386.rpm
尽管此 RPM 安装了许多其他文件,但只有管理服务器二进制文件 ndb_mgmd(在 /usr/sbin
目录中)才是运行管理节点所需的。该 server
RPM 还安装了 ndb_mgm,NDB 管理客户端。
请参阅 第 2.5.4 节,“使用 Oracle 提供的 RPM 包在 Linux 上安装 MySQL”,以获取使用 Oracle 提供的 RPM 包安装 MySQL 的一般信息。请参阅 第 25.3.3 节,“NDB 集群的初始配置”,以获取关于安装后配置的信息。