本节介绍从 Oracle 提供的预编译二进制文件安装每种集群节点的正确可执行文件的必要步骤。
对于使用预编译二进制文件设置集群,每个集群主机的安装过程的第一步是从 NDB 集群下载页面 下载二进制存档。(对于最新的 64 位 NDB 8.4 版本,该文件为 mysql-cluster-gpl-8.4.0-linux-glibc2.12-x86_64.tar.gz
。)我们假设您已将此文件放在每台机器的 /var/tmp
目录中。
如果您需要自定义二进制文件,请参阅 第 2.8.5 节 “使用开发源代码树安装 MySQL”。
完成安装后,请勿立即启动任何二进制文件。我们将在节点配置之后向您展示如何执行此操作(请参阅 第 25.3.3 节 “NDB 集群的初始配置”)。
**SQL 节点。** 在指定用于托管 SQL 节点的每台机器上,以系统 root
用户身份执行以下步骤
检查您的
/etc/passwd
和/etc/group
文件(或使用您的操作系统提供的用于管理用户和组的任何工具),以查看系统上是否已存在mysql
组和mysql
用户。某些操作系统发行版会在操作系统安装过程中创建这些文件。如果它们尚不存在,请创建一个新的mysql
用户组,然后将mysql
用户添加到该组中$> groupadd mysql $> useradd -g mysql -s /bin/false mysql
useradd 和 groupadd 的语法在不同版本的 Unix 上可能略有不同,或者它们可能具有不同的名称,例如 adduser 和 addgroup。
将位置更改为包含已下载文件的目录,解压缩存档,并创建一个名为
mysql
的符号链接,该链接指向mysql
目录。注意实际的文件和目录名称根据 NDB 集群版本号而异。
$> cd /var/tmp $> tar -C /usr/local -xzvf mysql-cluster-gpl-8.4.0-linux-glibc2.12-x86_64.tar.gz $> ln -s /usr/local/mysql-cluster-gpl-8.4.0-linux-glibc2.12-x86_64 /usr/local/mysql
将位置更改为
mysql
目录,并使用 mysqld--initialize
设置系统数据库,如下所示$> cd mysql $> mysqld --initialize
这将为 MySQL
root
帐户生成一个随机密码。如果您 不 希望生成随机密码,则可以使用--initialize-insecure
选项替换--initialize
。无论哪种情况,在执行此步骤之前,您都应该查看 第 2.9.1 节 “初始化数据目录” 以获取更多信息。另请参阅 第 6.4.2 节 “mysql_secure_installation - 提高 MySQL 安装安全性”。为 MySQL 服务器和数据目录设置必要的权限
$> chown -R root . $> chown -R mysql data $> chgrp -R mysql .
将 MySQL 启动脚本复制到相应的目录,使其可执行,并将其设置为在操作系统启动时启动
$> cp support-files/mysql.server /etc/rc.d/init.d/ $> chmod +x /etc/rc.d/init.d/mysql.server $> chkconfig --add mysql.server
(启动脚本目录可能会因您的操作系统和版本而异,例如,在某些 Linux 发行版中,该目录为
/etc/init.d
。)在这里,我们使用 Red Hat 的 chkconfig 创建指向启动脚本的链接;请使用您的平台上用于此目的的任何方法,例如 Debian 上的 update-rc.d。
请记住,必须在要驻留 SQL 节点的每台机器上重复上述步骤。
**数据节点。** 数据节点的安装不需要 mysqld 二进制文件。仅需要 NDB 集群数据节点可执行文件 ndbd(单线程)或 ndbmtd(多线程)。这些二进制文件也可以在 .tar.gz
存档中找到。同样,我们假设您已将此存档放在 /var/tmp
中。
以系统 root
身份(即,在使用 sudo、su root 或您的系统的等效命令临时获取系统管理员帐户的权限后),执行以下步骤以在数据节点主机上安装数据节点二进制文件
将位置更改为
/var/tmp
目录,并将 ndbd 和 ndbmtd 二进制文件从存档中提取到合适的目录,例如/usr/local/bin
$> cd /var/tmp $> tar -zxvf mysql-cluster-gpl-8.4.0-linux-glibc2.12-x86_64.tar.gz $> cd mysql-cluster-gpl-8.4.0-linux-glibc2.12-x86_64 $> cp bin/ndbd /usr/local/bin/ndbd $> cp bin/ndbmtd /usr/local/bin/ndbmtd
(将 ndb_mgm 和 ndb_mgmd 复制到可执行文件目录后,您可以安全地删除
/var/tmp
中解压缩下载的存档创建的目录及其包含的文件。)将位置更改为您复制文件的目录,然后使这两个文件都可执行
$> cd /usr/local/bin $> chmod +x ndb*
应在每个数据节点主机上重复上述步骤。
尽管运行 NDB 集群数据节点只需要一个数据节点可执行文件,但我们在前面的说明中向您展示了如何安装 ndbd 和 ndbmtd。我们建议您在安装或升级 NDB 集群时执行此操作,即使您只打算使用其中一个,因为如果以后决定从一个更改为另一个,这可以节省时间和精力。
托管数据节点的每台机器上的数据目录为 /usr/local/mysql/data
。在配置管理节点时,此信息至关重要。(请参阅 第 25.3.3 节 “NDB 集群的初始配置”。)
**管理节点。** 管理节点的安装不需要 mysqld 二进制文件。仅需要 NDB 集群管理服务器(ndb_mgmd);您很可能还想安装管理客户端(ndb_mgm)。这两个二进制文件也可以在 .tar.gz
存档中找到。同样,我们假设您已将此存档放在 /var/tmp
中。
以系统 root
身份,执行以下步骤以在管理节点主机上安装 ndb_mgmd 和 ndb_mgm
将位置更改为
/var/tmp
目录,并将 ndb_mgm 和 ndb_mgmd 从存档中提取到合适的目录,例如/usr/local/bin
$> cd /var/tmp $> tar -zxvf mysql-cluster-gpl-8.4.0-linux-glibc2.12-x86_64.tar.gz $> cd mysql-cluster-gpl-8.4.0-linux-glibc2.12-x86_64 $> cp bin/ndb_mgm* /usr/local/bin
(将 ndb_mgm 和 ndb_mgmd 复制到可执行文件目录后,您可以安全地删除
/var/tmp
中解压缩下载的存档创建的目录及其包含的文件。)将位置更改为您复制文件的目录,然后使这两个文件都可执行
$> cd /usr/local/bin $> chmod +x ndb_mgm*
在 第 25.3.3 节 “NDB 集群的初始配置” 中,我们为示例 NDB 集群中的所有节点创建配置文件。