Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

25.4.3.10 NDB 集群 TCP/IP 连接

TCP/IP 是 NDB 集群中所有节点之间的默认传输机制。通常不需要定义 TCP/IP 连接;NDB 集群自动为所有数据节点、管理节点和 SQL 或 API 节点设置这些连接。

要覆盖默认连接参数,需要在 config.ini 文件中定义一个连接,使用一个或多个 [tcp] 部分。每个 [tcp] 部分明确地定义了两个 NDB 集群节点之间的 TCP/IP 连接,必须至少包含 NodeId1NodeId2 参数,以及要覆盖的任何连接参数。

也可以通过在 [tcp default] 部分中设置这些参数来更改默认值。

Important

config.ini 文件中的任何 [tcp] 部分都应该列在最后,跟随文件中的所有其他部分。但是,这不是 [tcp default] 部分的要求。这是一个已知的问题,关于 NDB 集群管理服务器读取 config.ini 文件的方式。

可以在 [tcp][tcp default] 部分中设置的连接参数列举如下:

  • AllowUnresolvedHostNames

    Version (or later) NDB 8.3.0
    Type or units 布尔值
    Default false
    Range true, false
    Restart Type

    节点重启:需要对集群进行 滚动重启。(NDB 8.3.0)

    默认情况下,当管理节点在尝试连接时无法解析主机名时,这将导致致命错误。可以通过在 [tcp default] 部分中将 AllowUnresolvedHostNames 设置为 true 来覆盖这种行为,在这种情况下,无法解析主机名将被视为警告,而不是致命错误,ndb_mgmd 启动将继续不间断。

  • Checksum

    Version (or later) NDB 8.3.0
    Type or units 布尔值
    Default false
    Range true, false
    Restart Type

    节点重启:需要对集群进行 滚动重启。(NDB 8.3.0)

    该参数默认情况下是禁用的。当启用(设置为 Y1)时,对所有消息进行校验和计算,然后将其放入发送缓冲区。这确保了消息在发送缓冲区中或通过传输机制时不会被损坏。

  • Group

    ndb_optimized_node_selection 启用时,节点近似度将在某些情况下用于选择连接到的节点。该参数可以用来影响近似度,通过将其设置为较低的值,解释为 更近。请参阅系统变量的描述以获取更多信息。

  • HostName1

    Version (or later) NDB 8.3.0
    Type or units 名称或 IP 地址
    Default [...]
    Range ...
    Restart Type

    节点重启:需要对集群进行 滚动重启。(NDB 8.3.0)

    可以使用 HostName1HostName2 参数来指定用于特定 TCP 连接的网络接口。这些参数的值可以是主机名或 IP 地址。

  • HostName2

    Version (or later) NDB 8.3.0
    Type or units 名称或IP地址
    Default [...]
    Range ...
    Restart Type

    节点重启:需要对集群进行滚动重启。(NDB 8.3.0)

    可以使用HostName1HostName2参数指定用于两个节点之间的TCP连接的特定网络接口。这些参数的值可以是主机名或IP地址。

  • NodeId1

    Version (or later) NDB 8.3.0
    Type or units 数字
    Default [none]
    Range 1 - 255
    Restart Type

    节点重启:需要对集群进行滚动重启。(NDB 8.3.0)

    要标识两个节点之间的连接,需要在配置文件的[tcp]部分提供它们的节点ID作为NodeId1NodeId2的值。这些是每个节点的唯一Id值,如第25.4.3.7节“在NDB集群中定义SQL和其他API节点”所述。

  • NodeId2

    Version (or later) NDB 8.3.0
    Type or units 数字
    Default [none]
    Range 1 - 255
    Restart Type

    节点重启:需要对集群进行滚动重启。(NDB 8.3.0)

    要标识两个节点之间的连接,需要在配置文件的[tcp]部分提供它们的节点ID作为NodeId1NodeId2的值。这些是每个节点的唯一Id值,如第25.4.3.7节“在NDB集群中定义SQL和其他API节点”所述。

  • NodeIdServer

    Version (or later) NDB 8.3.0
    Type or units 数字
    Default [none]
    Range 1 - 63
    Restart Type

    节点重启:需要对集群进行滚动重启。(NDB 8.3.0)

    设置TCP连接的服务器端。

  • OverloadLimit

    Version (or later) NDB 8.3.0
    Type or units 字节
    Default 0
    Range 0 - 4294967039 (0xFFFFFEFF)
    Restart Type

    节点重启:需要对集群进行滚动重启。(NDB 8.3.0)

    当发送缓冲区中的未发送字节数超过这个值时,连接将被认为过载。

    可以使用这个参数来确定发送缓冲区中未发送数据的数量,以确定连接是否过载。请参阅第25.4.3.14节“配置NDB集群发送缓冲参数”,以获取更多信息。

  • PreferIPVersion

    Version (or later) NDB 8.3.0
    Type or units 枚举
    Default 4
    Range 4, 6
    Restart Type

    初始系统重启:需要完全关闭集群,使用备份还原集群文件系统,然后重新启动集群。(NDB 8.3.0)

    确定DNS解析的IP版本4或版本6的优先级。因为NDB集群的配置检索机制需要所有连接使用相同的优先级,因此这个参数应该在[tcp default]部分的全局配置文件config.ini中设置。

  • PreSendChecksum

    Version (or later) NDB 8.3.0
    Type or units 布尔值
    Default false
    Range true, false
    Restart Type

    节点重启:需要集群的滚动重启。(NDB 8.3.0)

    如果启用了该参数和Checksum,则在发送之前执行 checksum 检查,并检查所有 TCP 信号之间的错误。如果 Checksum 未启用,则无效。

  • Proxy

    Version (or later) NDB 8.3.0
    Type or units 字符串
    Default [...]
    Range ...
    Restart Type

    节点重启:需要集群的滚动重启。(NDB 8.3.0)

    设置 TCP 连接的代理。

  • ReceiveBufferMemory

    Version (or later) NDB 8.3.0
    Type or units 字节
    Default 2M
    Range 16K - 4294967039 (0xFFFFFEFF)
    Restart Type

    节点重启:需要集群的滚动重启。(NDB 8.3.0)

    指定从 TCP/IP 套接字接收数据时使用的缓冲区大小。

    该参数的默认值为 2MB。最小可能值为 16KB;理论最大值为 4GB。

  • RequireLinkTls

    Version (or later) NDB 8.3.0
    Type or units 布尔值
    Default false
    Range ...
    Added NDB
    Restart Type

    节点重启:需要集群的滚动重启。(NDB 8.3.0)

    如果节点在 TCP 连接的任一端点需要 TLS 身份验证,则该参数的值为 true,否则为 false。该值由 NDB 设置,无法被用户更改。

  • SendBufferMemory

    Version (or later) NDB 8.3.0
    Type or units 无符号整数
    Default 2M
    Range 256K - 4294967039 (0xFFFFFEFF)
    Restart Type

    节点重启:需要集群的滚动重启。(NDB 8.3.0)

    TCP 传输器使用缓冲区来存储所有消息,然后对操作系统执行发送调用。当缓冲区达到 64KB 时,其内容将被发送;这些内容也将在一轮消息执行后被发送。

    如果明确设置了该参数,则内存不会专门分配给每个传输器;相反,该值将表示单个传输器可以使用的最大内存量(来自总可用内存,即 TotalSendBufferMemory)。有关在 NDB 集群中配置动态传输器发送缓冲区内存分配的更多信息,请参阅第 25.4.3.14 节,“配置 NDB 集群发送缓冲区参数”

    默认情况下,发送缓冲区的大小为 2MB,这是大多数情况下的推荐大小。最小大小为 64 KB;理论最大值为 4 GB。

  • SendSignalId

    Version (or later) NDB 8.3.0
    Type or units 布尔值
    Default false (调试版本:true)
    Range true, false
    Restart Type

    节点重启:需要集群的滚动重启。(NDB 8.3.0)

    要能够追踪分布式消息数据报文,需要标识每个消息。当该参数设置为 Y 时,消息 ID 将被传输到网络上。在生产版本中,默认情况下禁用该功能,而在调试版本中启用。

  • TcpBind_INADDR_ANY

    将该参数设置为 TRUE1,以便将 IP_ADDR_ANY 绑定到任何地方(对于自动生成的连接)。默认值为 FALSE (0)。

  • TcpSpinTime

    Version (or later) NDB 8.3.0
    Type or units 微秒
    Default 0
    Range 0 - 2000
    Restart Type

    节点重启:需要对集群进行滚动重启。(NDB 8.3.0)

    控制 TCP 传输器的自旋;无启用,设置为非零值。这适用于数据节点和管理或 SQL 节点连接的两侧。

  • TCP_MAXSEG_SIZE

    Version (or later) NDB 8.3.0
    Type or units 无符号整数
    Default 0
    Range 0 - 2G
    Restart Type

    节点重启:需要对集群进行滚动重启。(NDB 8.3.0)

    确定 TCP 传输器初始化期间设置的内存大小。默认值适用于大多数常见用例。

  • TCP_RCV_BUF_SIZE

    Version (or later) NDB 8.3.0
    Type or units 无符号整数
    Default 0
    Range 0 - 2G
    Restart Type

    节点重启:需要对集群进行滚动重启。(NDB 8.3.0)

    确定 TCP 传输器初始化期间设置的接收缓冲区大小。默认值和最小值为 0,允许操作系统或平台设置该值。默认值适用于大多数常见用例。

  • TCP_SND_BUF_SIZE

    Version (or later) NDB 8.3.0
    Type or units 无符号整数
    Default 0
    Range 0 - 2G
    Restart Type

    节点重启:需要对集群进行滚动重启。(NDB 8.3.0)

    确定 TCP 传输器初始化期间设置的发送缓冲区大小。默认值和最小值为 0,允许操作系统或平台设置该值。默认值适用于大多数常见用例。

重启类型。 本节中的参数描述使用的重启类型信息如下表所示:

表 25.20 NDB 集群重启类型

Symbol Restart Type Description
N 节点 可以使用滚动重启(见第 25.6.5 节,“执行 NDB 集群的滚动重启”)更新参数
S 系统 所有集群节点必须完全关闭,然后重新启动,以便更改该参数
I 初始 数据节点必须使用 --initial 选项重新启动