• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • NDB群集连接字符串

    除了NDB群集管理服务器(ndb_mgmd)之外,属于NDB群集的每个节点都需要一个指向管理服务器位置的连接字符串。此连接字符串用于建立与管理服务器的连接以及执行其他任务,具体取决于群集中节点的角色。连接字符串的语法如下:

    [nodeid=node_id, ]host-definition[, host-definition[, ...]]
    
    host-definition:
        host_name[:port_number]
    

    node_id是大于或等于1的整数,用于标识中的节点config.inihost_name是代表有效的Internet主机名或IP地址的字符串。port_number是一个整数,表示TCP / IP端口号。

    example 1 (long):    "nodeid=2,myhost1:1100,myhost2:1100,198.51.100.3:1200"
    example 2 (short):   "myhost1"
    

    localhost:1186如果未提供,则用作默认的连接字符串值。如果port_num从连接字符串中省略该端口,则默认端口为1186。该端口应始终在网络上可用,因为IANA为此目的已为其分配了该端口(请参见 http://www.iana.org/assignments/port-numbers)。有关详细信息)。

    通过列出多个主机定义,可以指定多个冗余管理服务器。NDB群集数据或API节点尝试按指定的顺序联系每个主机上的后续管理服务器,直到建立成功的连接为止。

    还可以在连接字符串中指定一个或多个绑定地址,以供具有多个网络接口的节点用于连接到管理服务器。绑定地址由主机名或网络地址和可选的端口号组成。连接字符串的增强语法如下所示:

    [nodeid=node_id, ]
        [bind-address=host-definition, ]
        host-definition[; bind-address=host-definition]
        host-definition[; bind-address=host-definition]
        [, ...]]
    
    host-definition:
        host_name[:port_number]
    

    如果在指定任何管理主机之前在连接字符串中使用了单个绑定地址,则该地址将用作连接到其中任何主机的默认地址(除非为给定的管理服务器覆盖;请参见本节后面的示例)。例如,以下连接字符串使节点198.51.100.242无论其连接到哪个管理服务器都可以使用:

    bind-address=198.51.100.242, poseidon:1186, perch:1186
    

    如果指定了绑定地址下列一个管理主机定义,则它仅用于连接到该管理节点。考虑以下连接字符串:

    poseidon:1186;bind-address=localhost, perch:1186;bind-address=198.51.100.242
    

    在这种情况下,节点用于localhost连接到运行在名为的主机上的管理服务器,poseidon198.51.100.242连接到运行在名为的主机上的管理服务器perch

    您可以指定默认绑定地址,然后为一个或多个特定管理主机覆盖此默认地址。在以下示例中,localhost用于连接到主机上运行的管理服务器poseidon;因为198.51.100.242首先指定(在任何管理服务器定义之前),所以它是默认绑定地址,因此用于连接到主机perchorca以下主机上的管理服务器:

    bind-address=198.51.100.242,poseidon:1186;bind-address=localhost,perch:1186,orca:2200
    

    有多种不同的方法来指定连接字符串:

    • 每个可执行文件都有其自己的命令行选项,该选项可在启动时指定管理服务器。(请参阅相应可执行文件的文档。)
    • 也可以通过将其放置[mysql_cluster]在管理服务器my.cnf文件中的一部分中,一次为集群中的所有节点设置连接字符串。
    • 为了向后兼容,可以使用相同的语法提供另外两个选项:

      1. 设置NDB_CONNECTSTRING环境变量以包含连接字符串。
      2. 将每个可执行文件的连接字符串写入一个名为的文本文件中,Ndb.cfg然后将此文件放置在该可执行文件的启动目录中。

      但是,现在不推荐使用这些工具,不应将它们用于新安装。

    建议的指定连接字符串的方法是在命令行或my.cnf每个可执行文件的文件中进行设置。