除了NDB集群管理服务器(ndb_mgmd),每个作为NDB集群一部分的节点都需要一个连接字符串它指向管理服务器的位置。此连接字符串用于建立到管理服务器的连接,以及执行根据节点在集群中的角色而定的其他任务。连接字符串的语法如下:
[nodeid =node_id.,)主机定义(,主机定义[…]]主机定义:主机名[:port_number进行]
node_id.
是一个大于或等于1的整数来标识节点在config.ini.
。主机名
是表示有效Internet主机名或IP地址的字符串。port_number进行
是指TCP / IP端口号的整数。
示例1 (long): "nodeid=2,myhost1:1100,myhost2:1100,198.51.100.3:1200"
localhost:1186
如果没有提供默认连接字符串值,则用作默认连接字符串值。如果port_num.
从连接字符串中省略,默认端口为1186.此端口应始终在网络上可用,因为它已由IANA为此分配(参见http://www.iana.org/assignments/port-numbers有关详细信息)。
通过列出多个主机定义,可以指定多个冗余管理服务器。NDB集群数据或API节点尝试按指定的顺序联系每台主机上的连续管理服务器,直到成功建立连接。
还可以在连接字符串中指定一个或多个绑定地址,这些地址将由具有多个网络接口的节点使用,用于连接到管理服务器。绑定地址由主机名或网络地址和一个可选的端口号组成。这个增强的连接字符串语法如下所示:
[nodeid =node_id.] [bind-address =主机定义,)主机定义[;绑定地址=主机定义]主机定义[;绑定地址=主机定义] [, ...]]主机定义:主机名[:port_number进行]
如果在连接字符串中使用单个绑定地址之前要指定任何管理主机,则此地址被用作连接到其中任何一个的默认地址(除非为给定的管理服务器覆盖;参见本节后面的示例)。例如,下面的连接字符串导致使用该节点198.51.100.242
无论它连接到哪个管理服务器:
鲈鱼bind-address = 198.51.100.242,波塞冬:1186:1186
如果指定了绑定地址后一个管理主机定义,那么它只用于连接到该管理节点。考虑以下连接字符串:
波塞冬:1186;bind-address = localhost,鲈鱼:1186;bind-address = 198.51.100.242
在这种情况下,节点使用本地主机
连接到主机上的管理服务器命名波塞冬
和198.51.100.242
连接到主机上的管理服务器命名鲈鱼
。
您可以指定默认绑定地址,然后覆盖一个或多个特定管理主机的默认值。在以下示例中,本地主机
用于连接主机上运行的管理服务器波塞冬
;自198.51.100.242
首先指定(在任何管理服务器定义之前),它是默认绑定地址,因此用于连接到主机上的管理服务器鲈鱼
和orca.
:
bind-address = 198.51.100.242,波塞冬:1186;bind-address = localhost,鲈鱼:1186年,虎鲸:2200
指定连接字符串有许多不同的方法:
每个可执行文件都有自己的命令行选项,用于在启动时指定管理服务器。(参见相关可执行文10bet官方网站件的文档。)
也可以通过将连接字符串放在
(mysql_cluster)
部分在管理服务器的我.CNF.
文件。对于向后兼容性,使用相同的语法可用了另外两个选项:
设置
ndb_connectstring.
环境变量,以包含连接字符串。将每个可执行文件的连接字符串写入名为
ndb.cfg.
并将此文件放在可执行文件的启动目录中。
但是,现在不建议在新安装中使用它们。
指定连接字符串的推荐方法是在命令行上或我.CNF.
每个可执行文件的文件。