2.3.1 Unix平台上安装MySQL集群管理器

按照下面的说明在Linux和类似的平台上安装MySQL Cluster Manager代理。

从分发归档文件中提取MySQL Cluster Manager 1.4.8程序和其他文件。您必须在打算用作MySQL NDB集群主机的每台计算机上安装MySQL集群管理器的副本。换句话说,您需要在MySQL集群管理器管理站点的每个成员主机上安装MySQL集群管理器。对于每台主机,您应该使用与该计算机的操作系统和处理器架构相匹配的MySQL集群管理器构建。

在Linux系统上,可以使用以下命令解包存档mcm - 1.4.8集群7.6.13 - linux - sles11 - x86 - 64 bit.tar.gz作为一个例子(实际的文件名会根据你打算部署的MySQL集群管理器版本而不同):

$> tar -zxvf McM-1.4.8-cluster-7.6.13-linux-sles11-x86-64bit.tar.gz

此命令将归档文件解压缩到与归档文件名称相同的目录中gz扩展。存档中的顶级目录被命名mcm-1.4.8

重要的

因为Solaris版本的焦油不能正确处理长文件名,MySQL集群管理器程序文件可能被破坏,如果你试图使用它来解压MySQL集群管理器存档。要在Solaris操作系统上解决这个问题,您应该使用GNU焦油gtar)而不是默认值焦油Solaris提供。在Solaris 10上,gtar往往已经安装在/usr/sfw/bin目录,尽管gtar可执行文件可能不包含在您的路径中。如果gtar在您的系统中不存在,请参阅Solaris 10系统文档10bet官方网站有关如何获取和安装它的信息。

通常,您放置解压缩MySQL Cluster Manager目录的位置和该目录的名称可以是任意的。但是,我们建议您为可选软件使用标准的位置,例如/ opt在Linux系统上,并且使用1.4.8版本号命名目录。(这有利于后续升级。)在一个典型的Linux系统上,你可以像这样完成这个任务:

CD McM-1.4.8 -cluster-7.6.13-linux-sles11-x86-64bit $> mv McM-1.4.8 /opt/ McM-1.4.8

为了使用方便,我们建议您将MySQL Cluster Manager文件放在您打算运行它的每台主机上的相同目录中。

MySQL集群管理器Unix分发档案的内容。如果您更改到您放置提取的MySQL集群管理器存档的目录并列出内容,您应该会看到类似于下面所示的内容:

$> CD /opt/mcm-1.4.8 $> ls bin cluster etc lib libexec license share var .使用实例

这些目录如下表所示:

表2.1 MySQL Cluster Manager Unix分发归档文件的目录

目录 内容
箱子 MySQL集群管理器代理启动脚本
集群 包含MySQL NDB集群7.6.13二进制发行版
包含代理配置文件(mcmd.ini
等摆在 Init脚本
自由和子目录 库需要运行MySQL集群管理器代理
libexec MySQL集群管理器代理和客户端可执行文件
许可/ lgpl 包含源代码(包括许可和文档)的存档,用于10bet官方网站口齿伶俐的2.1
分享/ doc / mcmd 固定文件
var XML文件,包含MySQL集群管理器所需的有关进程、属性和命令语法的信息

通常,在上表中所示的目录中,您需要关注的唯一目录是箱子而且目录。

对于包含MySQL NDB Cluster的MySQL Cluster Manager 1.4.8发行版,完整的MySQL NDB Cluster 7.6.13二进制发行版包含在集群目录中。在这个目录中,MySQL NDB集群发行版的布局与独立的MySQL NDB集群二进制发行版的布局相同。例如MySQL NDB集群二进制程序等ndb_mgmdndbdndbmtd,ndb_mgm可在集群/ bin.有关更多信息,请参见MySQL通用Unix/Linux二进制包的安装布局,Linux下安装NDB集群二进制版本,在MySQL手册

如果您希望使用附带的MySQL NDB集群软件,建议您将集群目录和它的所有内容到MySQL集群管理器安装目录之外的位置,例如/ opt / ndb -版本.例如,在Linux系统上,您可以将MySQL集群管理器1.4.8绑定的MySQL NDB集群NDB 7.6.13软件移动到一个合适的位置,首先导航到MySQL集群管理器安装目录,然后使用类似于下面所示的shell命令:

$> mv cluster /opt/ db-7.6.13 .使用实例
请注意

mcmd——引导选项使用安装目录中包含的MySQL NDB集群二进制文件集群目录,如果在那里找不到它们,则无法工作。要解决这个问题,在它所在的位置创建一个指向正确目录的符号链接,像这样:

$> ln -s /opt/ db-7.6.13 cluster . sh

完成此操作后,您可以使用罗马数字客户端命令添加包而且集群升级升级任何需要的集群到新的MySQL NDB集群软件版本。

重要的

在Linux平台上,禁止使用RPM、Debian或其他包管理系统的安装包安装MySQL NDB Cluster软件。它们安装MySQL NDB集群的方式与MySQL集群管理器存档附带的二进制发行版不同,这将在将来当您尝试用MySQL集群管理器升级您的集群时引起问题。

默认情况下,MySQL集群管理器代理将其日志文件写入mcmd.log在安装目录下。当代理第一次运行时,它创建一个目录,代理在其中存储自己的配置数据;默认情况下是这样. . / mcm_data(相对于MySQL Cluster Manager的安装目录)。配置数据、日志文件和数据节点文件系统为一个给定的MySQL NDB集群在MySQL集群管理器的控制下,并命名cluster_name,可以在集群/cluster_name在这个数据目录下(有时也称为MySQL集群管理器)数据存储库).

MySQL集群管理器代理配置文件、日志文件和数据目录的位置可以被控制mcmd启动选项或在代理配置文件中进行更改。为了简化MySQL集群管理器的升级,我们建议您将数据存储库更改为MySQL集群管理器安装目录之外的目录,例如/var/opt/mcm.看到第2.4节“MySQL集群管理器配置文件”,第3.2节“启动和停止MySQL集群管理器代理”,以查询更多资料。

在Linux和其他类unix系统上,您可以使用MySQL Cluster Manager发行版提供的初始化脚本,将MySQL Cluster Manager代理设置为作为守护进程运行。要做到这一点,请遵循下面列出的步骤:

  1. 复制文件/etc/init.d/mcmd在MySQL集群管理器安装目录下/etc/init.d/目录(或等效的)。在典型的Linux系统上,您可以在系统shell中使用以下命令完成此操作,其中mcmdir是MySQL集群管理器的安装目录:

    $ > cdmcmdir/etc/init.D $> cp MCMD /etc/init.d/mcmd . sh
  2. 确保该文件具有适当的权限,并且可以由运行MySQL集群管理器的用户帐户执行。在典型的Linux系统上,这可以通过在系统shell中执行类似于下面所示的命令来实现:

    $> chown McMuser /etc/init.D /mcmd $> chmod 755 /etc/init. D /mcmd

    请务必参考您的操作系统文档,以获得有关执行这些操作所需的命令的确切信息,因为它们在不10bet官方网站同平台之间可能有所不同。

  3. 打开文件/etc/init.d/mcmd在文本编辑器中。在这里,我们展示了这个文件的一部分,其中我们突出显示了需要更新的两行:

    MCMD_SERVICE="mcmd" MCMD_PSERVICE="MySQL集群管理器"MCMD_ROOTDIR = @@MCMD_ROOTDIR@@MCMD_BIN="$MCMD_ROOTDIR/bin/mcmd" MCMD_CONFIG="$MCMD_ROOTDIR/etc/mcmd.ini" #非root用户运行服务MCMD_USER = @@MCMD_USER@@SU=" SU——login $MCMD_USER——command"

    在第一行中,替换占位符@@MCMD_ROOTDIR@@和MySQL集群管理器安装目录的完整路径。在第二行中,替换占位符@@MCMD_USER@@使用运行MySQL集群管理器代理的系统用户名(注意这必须成为系统账户)。保存编辑后的文件。

MySQL集群管理器代理现在应该在系统重新启动时自动启动。

当将代理配置为守护进程时,只要在代理关闭时集群正在运行,当代理重新启动时集群进程就会自动启动。请注意,StopOnError必须为所有数据节点禁用(设置为0)才能使其工作.如果在代理关闭时集群已停止,则需要提供一个脚本,该脚本等待代理完成启动和恢复阶段,然后在代理准备就绪时,使用以下命令启动集群mcmdir/bin/mcm -e '启动cluster——backgroundcluster_name,“