25.3.1.2 从 RPM 安装 NDB 集群
本节涵盖了使用 Oracle 提供的 RPM 包安装每种类型 NDB 集群节点所需步骤。
作为本节中描述的方法的替代方案,Oracle 提供了 MySQL Repositories for NDB 集群,这些仓库与许多常见 Linux 发行版兼容。以下列出了两个仓库,对于使用 RPM 的发行版:
-
对于使用 yum 或 dnf 的发行版,您可以使用 MySQL Yum 仓库 for NDB 集群。请参阅使用 Yum 仓库安装 MySQL NDB 集群,了解详细信息和安装步骤。
-
对于 SLES,您可以使用 MySQL SLES 仓库 for NDB 集群。请参阅使用 SLES 仓库安装 MySQL NDB 集群,了解详细信息和安装步骤。
RPM 可以用于 32 位和 64 位 Linux 平台。这些 RPM 的文件名遵循以下模式:
mysql-cluster-community-data-node-8.4.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 (已弃用) |
NDB 集群自动安装程序;请参阅The NDB Cluster Auto-Installer(不再支持),了解使用方法 |
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 |
服务器最小 debug 信息; 对于使用该包或调试该包的应用程序开发非常有用 |
ndbclient |
NDB 客户端库,用于运行 NDB API 和 MGM API 应用程序(libndbclient ) |
ndbclient- devel |
开发 NDB API 和 MGM API 应用程序所需的头文件和其他文件 |
nodejs |
NDB 集群设置 Node.js 支持所需的文件 |
server |
MySQL 服务器(mysqld),包括 NDB 存储引擎支持和相关的 MySQL 服务器程序 |
server- minimal |
NDB 和相关工具的最小 MySQL 服务器安装 |
test |
mysqltest,其他MySQL测试程序和支持文件 |
一个平台和架构给定的NDB集群RPM的单个捆绑包(.tar
文件)也可用。该文件名遵循以下模式:
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.4 中以 8.4.0
的格式显示。在本节中的示例中,我们使用 8.4.0
作为该值。
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.4.0
)可能根据实际使用的版本号而变化。请确保所有要安装的 Cluster RPM 都具有相同的版本号。架构也应该与要安装 RPM 的机器相匹配;特别是,64 位 RPM (x86_64
) 不可以在 32 位操作系统上使用(请使用 i686
对于后者)。
数据节点。 在要安装 NDB 集群数据节点的计算机上,只需要安装 data-node
RPM。执行以下命令作为系统 root 用户,替换 RPM 名称以匹配从 MySQL 网站下载的 RPM 名称:
$> rpm -Uhv mysql-cluster-community-data-node-8.4.0-1.el7.x86_64.rpm
这将在 /usr/sbin
安装 ndbd 和 ndbmtd 数据节点二进制文件。这些文件中的任何一个都可以用来在该主机上运行数据节点进程。
SQL 节点。 将 server
和 common
RPM 复制到要用于主持 NDB 集群 SQL 节点的每台机器 (server
需要 common
)。执行以下命令作为系统 root 用户,以安装 server
RPM,替换 RPM 名称以匹配从 MySQL 网站下载的 RPM 名称:
$> rpm -Uhv mysql-cluster-community-server-8.4.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 服务器发布的版本不提供对 NDB
存储引擎的支持。
为了管理 SQL 节点(MySQL 服务器),您还应该安装 client
RPM,如下所示:
$> rpm -Uhv mysql-cluster-community-client-8.4.0-1.el7.x86_64.rpm
这将安装mysql 客户端和其他 MySQL 客户端程序,例如 mysqladmin 和 mysqldump,到 /usr/bin
。
管理节点。 安装 NDB 集群管理服务器时,只需要使用 management-server
RPM。将该 RPM 复制到要托管管理节点的计算机,然后以系统 root 用户身份运行以下命令安装它(将 RPM 名称更改为与从 MySQL 网站下载的 management-server
RPM 匹配):
$> rpm -Uhv mysql-cluster-community-management-server-8.4.0-1.el7.x86_64.rpm
该 RPM 安装了管理服务器二进制文件ndb_mgmd 到 /usr/sbin
目录中。虽然这只是实际运行管理节点所需的唯一程序,但同时拥有ndb_mgm NDB 集群管理客户端也是一个好主意。您可以通过安装 client
RPM,获得该程序,以及其他 NDB
客户端程序,如ndb_desc 和ndb_config。
请参阅第 2.5.4 节,“使用 Oracle 提供的 RPM 包安装 MySQL”,了解如何使用 Oracle 提供的 RPM 包安装 MySQL。
从RPM安装后,您仍需要配置集群;请参阅第25.3.3节,“NDB集群的初始配置”,获取相关信息。
请确保所有要安装的Cluster RPM都具有相同的版本号。architecture
标签也应该与将要安装RPM的机器相匹配;特别是,64位RPM不能与32位操作系统一起使用。
数据节点。 在要托管集群数据节点的计算机上,您只需要安装server
RPM。为此,请将该RPM复制到数据节点主机,然后以系统root用户身份运行以下命令,替换显示的RPM名称,以匹配从MySQL网站下载的RPM名称:
$> rpm -Uhv MySQL-Cluster-server-gpl-8.4.0-1.sles11.i386.rpm
虽然这安装了所有NDB集群二进制文件,但只有程序ndbd或ndbmtd(在/usr/sbin
中)实际需要运行NDB集群数据节点。
SQL节点。 在每台要用作集群SQL节点的机器上,安装server
RPM,以系统root用户身份执行以下命令,替换显示的RPM名称,以匹配从MySQL网站下载的RPM名称:
$> rpm -Uhv MySQL-Cluster-server-gpl-8.4.0-1.sles11.i386.rpm
这将安装MySQL服务器二进制文件(mysqld)带有NDB
存储引擎支持在/usr/sbin
目录中,以及所有需要的MySQL Server支持文件。它还安装了mysql.server和mysqld_safe启动脚本(在/usr/share/mysql
和/usr/bin
中,分别)。RPM安装程序应该自动处理一般配置问题(例如,如果需要创建mysql
用户和组)。
为了管理SQL节点(MySQL服务器),您还需要安装client
RPM,如下所示:
$> rpm -Uhv MySQL-Cluster-client-gpl-8.4.0-1.sles11.i386.rpm
这将安装mysql客户端程序。
管理节点。要安装NDB集群管理服务器,只需要使用server
RPM。将该RPM复制到计划主持管理节点的计算机,然后以系统root用户身份运行以下命令(将显示的RPM名称更改为必要,以匹配从MySQL网站下载的server
RPM):
$> rpm -Uhv MySQL-Cluster-server-gpl-8.4.0-1.sles11.i386.rpm
虽然这个RPM安装了许多其他文件,但只有管理服务器二进制文件ndb_mgmd(在/usr/sbin
目录中)实际上是运行管理节点所需的。server RPM还安装了ndb_mgm,NDB管理客户端,以及NDB
管理客户端。
请查看第2.5.4节,“使用Oracle提供的RPM包安装MySQL”,了解如何使用Oracle提供的RPM包安装MySQL。查看第25.3.3节,“NDB集群的初始配置”,了解需要在安装后进行的配置信息。