该工具从多个源之一提取数据节点、SQL节点和API节点的当前配置信息:NDB集群管理节点或其管理节点config.ini
或my.cnf
文件。默认情况下,管理节点是配置数据的来源;来执行ndb_config,以覆盖默认值——配置文件
或——mycnf
选择。还可以使用数据节点作为源,方法是使用——config_from_node =
。node_id
ndb_config还可以提供所有可以使用的配置参数的离线转储,以及它们的默认值、最大值和最小值以及其他信息。转储可以以文本或XML格式生成;有关更多信息,请参阅——configinfo
和——xml
选项)。
您可以按节(DB
,系统
,或连接
)使用其中一个选项——节点
,——系统
,或——连接
。
可以使用的所有选项ndb_config如下表所示。表后是其他描述。
表23.29 ndb_config . conf程序使用的命令行选项
格式 | 描述 | 添加,弃用或删除 |
---|---|---|
包含字符集的目录 | (所有基于MySQL 8.0的NDB版本都支持) |
|
在my.cnf文件中读取cluster_config节时覆盖默认的组后缀;用于测试 | 新增:NDB 8.0.24 |
|
设置路径为config.ini file | (所有基于MySQL 8.0的NDB版本都支持) |
|
从具有此ID的节点获取配置数据(必须是数据节点) | (所有基于MySQL 8.0的NDB版本都支持) |
|
以具有默认值、最大值和最小值的文本格式转储有关所有NDB配置参数的信息。使用with——xml获取xml输出 | (所有基于MySQL 8.0的NDB版本都支持) |
|
只打印连接信息([tcp], [tcp default], [sci], [sci default], [shm]或[shm default]部分)。不能与——system或——nodes一起使用 | (所有基于MySQL 8.0的NDB版本都支持) |
|
在放弃之前重试连接的次数 | (所有基于MySQL 8.0的NDB版本都支持) |
|
在两次尝试联系管理服务器之间等待的秒数 | (所有基于MySQL 8.0的NDB版本都支持) |
|
与——ndb-connectstring相同 | (所有基于MySQL 8.0的NDB版本都支持) |
|
错误时写入核心文件;用于调试 | (所有基于MySQL 8.0的NDB版本都支持) |
|
在读取全局文件后读取给定文件 | (所有基于MySQL 8.0的NDB版本都支持) |
|
仅从给定文件读取默认选项 | (所有基于MySQL 8.0的NDB版本都支持) |
|
还可以使用concat(组,后缀)读取组 | (所有基于MySQL 8.0的NDB版本都支持) |
|
只打印非默认值的配置参数 | (所有基于MySQL 8.0的NDB版本都支持) |
|
字段分隔符 | (所有基于MySQL 8.0的NDB版本都支持) |
|
|
显示帮助文本并退出 | (所有基于MySQL 8.0的NDB版本都支持) |
指定主机 | (所有基于MySQL 8.0的NDB版本都支持) |
|
从登录文件中读取给定路径 | (所有基于MySQL 8.0的NDB版本都支持) |
|
从my.cnf文件中读取配置数据 | (所有基于MySQL 8.0的NDB版本都支持) |
|
设置连接ndb_mgmd的连接字符串。语法:“[nodeid = id;][主机=]主机名(港口):”。覆盖NDB_CONNECTSTRING和my.cnf中的条目 | (所有基于MySQL 8.0的NDB版本都支持) |
|
与——ndb-connectstring相同 | (所有基于MySQL 8.0的NDB版本都支持) |
|
为这个节点设置节点ID,覆盖由——ndb-connectstring设置的任何ID | (所有基于MySQL 8.0的NDB版本都支持) |
|
为事务选择节点启用优化。默认启用;使用——skip-ndb-optimized-node-selection禁用 | (所有基于MySQL 8.0的NDB版本都支持) |
|
不从登录文件以外的任何选项文件中读取默认选项 | (所有基于MySQL 8.0的NDB版本都支持) |
|
获取具有此ID的节点的配置 | (所有基于MySQL 8.0的NDB版本都支持) |
|
只打印节点信息(集群配置文件中的[ndbd]或[ndbd default]部分)。不能与——system或——连接一起使用 | (所有基于MySQL 8.0的NDB版本都支持) |
|
一个或多个查询选项(属性) | (所有基于MySQL 8.0的NDB版本都支持) |
|
将所有参数和值转储为单个以逗号分隔的字符串 | (所有基于MySQL 8.0的NDB版本都支持) |
|
打印程序参数列表并退出 | (所有基于MySQL 8.0的NDB版本都支持) |
|
行分隔符 | (所有基于MySQL 8.0的NDB版本都支持) |
|
只打印SYSTEM部分信息(参见ndb_config——configinfo输出)。不能用于——节点或——连接 | (所有基于MySQL 8.0的NDB版本都支持) |
|
指定节点类型 | (所有基于MySQL 8.0的NDB版本都支持) |
|
|
显示帮助文本并退出;和——救命 | (所有基于MySQL 8.0的NDB版本都支持) |
|
显示版本信息并退出 | (所有基于MySQL 8.0的NDB版本都支持) |
使用——xml和——configinfo以xml格式获取所有NDB配置参数的转储,包括默认值、最大值和最小值 | (所有基于MySQL 8.0的NDB版本都支持) |
-
命令行格式 ——cluster-config-suffix =名字
介绍了 8.0.24-ndb-8.0.24 类型 字符串 默认值 (没有)
中读取集群配置节时覆盖默认组后缀
my.cnf
;用于测试。 的
——configinfo
选择的原因ndb_config转储NDB集群分布支持的每个NDB集群配置参数的列表ndb_config是一个部件,包括以下信息:对每个参数的目的、效果和用法的简要描述
的部分
config.ini
可以使用参数的文件参数的数据类型或度量单位
在适用的情况下,参数的默认值、最小值和最大值
NDB集群发布版本和构建信息
默认情况下,该输出为文本格式。部分输出如下所示:
shell> ndb_config——configinfo ****** SYSTEM ******名称(String)系统(NDB集群)名称必选PrimaryMGMNode(非负整数)主ndb_mgmd(MGM)节点id默认值:0 (Min: 0, Max: 4294967039) ConfigGenerationNumber(非负整数)配置生成号默认值:0 (Min: 0, Max: 4294967039) ****** DB ****** MaxNoOfSubscriptions(非负整数)最大订阅数(默认0 == MaxNoOfTables)默认值:0 (Min: 0, Max: 4294967039)4294967039) maxnoofsubscriptions(非负整数)最大订阅者数量(默认0 == 2 * MaxNoOfTables)默认:0 (Min: 0, Max: 4294967039)…
将此选项与
——xml
选项以获得XML格式的输出。-
命令行格式 ——配置文件= file_name
类型 文件名称 默认值 给出管理服务器配置文件的路径(
config.ini
)。这可能是一个相对或绝对路径。如果管理节点位于不同的主机上ndb_config,则必须使用绝对路径。 -
命令行格式 ——config-from-node = #
类型 数字 默认值 没有一个
最小值 1
最大值 48
从具有此ID的数据节点获取集群的配置数据。
如果具有此ID的节点不是数据节点,ndb_config失败并出现错误。(要从管理节点获取配置数据,只需省略此选项即可。)
-
命令行格式 ——连接
类型 布尔 默认值 假
告诉ndb_config打印
连接
类中找到的参数信息(tcp)
,(tcp违约)
,(shm)
,或(单孔位微吹气扰动违约)
部分的集群配置文件(参见第23.3.3.10节,“NDB集群TCP/IP连接”,第23.3.3.12节,“NDB集群共享内存连接”,以获取更多资讯)。 -
命令行格式 ——diff-default
类型 布尔 默认值 假
只打印非默认值的配置参数。
-
命令行格式 ——字段=字符串
类型 字符串 默认值 指定一个
分隔符
字符串,用于分隔结果中的字段。默认值为,
(逗号字符)。请注意如果
分隔符
包含空格或转义(如\ n
对于换行字符),则必须加引号。 -
命令行格式 ——主机=名
类型 字符串 默认值 需要获取配置信息的节点主机名。
请注意而主机名
本地主机
通常解析为IP地址127.0.0.1
,这可能并不一定适用于所有操作平台和配置。这意味着它是可能的,当本地主机
用于config.ini
,因为ndb_config——主机= localhost
让它失败ndb_config在不同的主机上运行本地主机
解析到不同的地址(例如,在某些版本的SUSE Linux上,这是。127.0.0.2
)。一般来说,为了获得最佳结果,您应该为与主机相关的所有NDB Cluster配置值使用数字IP地址,或者验证所有NDB Cluster主机处理本地主机
以同样的方式。 -
命令行格式 ——mycnf
类型 布尔 默认值 假
中读取配置数据
my.cnf
文件。 ——ndb-connectstring =
,connection_string
- c
connection_string
命令行格式 ——ndb-connectstring =连接字符串
类型 字符串 默认值 (没有)
指定连接到管理服务器时要使用的连接字符串。连接字符串的格式与第23.3.3.3节,“NDB集群连接字符串”,默认为
localhost: 1186
。-
命令行格式 ——已
除登录文件外,不要从任何选项文件中读取默认选项。
-
命令行格式 ——ndb-nodeid = #
类型 整数 默认值 (没有)
指定需要获取配置信息的节点ID。
-
命令行格式 ——节点
类型 布尔 默认值 假
告诉ndb_config类中定义的参数相关的信息
(ndbd)
或(ndbd违约)
部分的集群配置文件(请参阅第23.3.3.6节“定义NDB集群数据节点”)。 -
命令行格式 ——查询=字符串
类型 字符串 默认值 的列表,以逗号分隔查询选项即要返回的一个或多个节点属性的列表。这些包括
nodeid
(节点ID), type(节点类型),即ndbd
,mysqld
,或ndb_mgmd
),以及要获取其值的任何配置参数。例如,
——查询= nodeid类型、datamemory datadir
返回节点ID、节点类型、DataMemory
,DataDir
对于每个节点。请注意如果给定的参数不适用于特定类型的节点,则返回对应值的空字符串。有关更多信息,请参阅本节后面的示例。
-
命令行格式 ——查询所有
类型 字符串 默认值 返回所有查询选项(节点属性;注意,这个列表是一个字符串。
-
命令行格式 ——行=字符串
类型 字符串 默认值 指定一个
分隔符
字符串,用于分隔结果中的行。默认是一个空格字符。请注意如果
分隔符
包含空格或转义(如\ n
对于换行字符),则必须加引号。 -
命令行格式 ——系统
类型 布尔 默认值 假
告诉ndb_config打印
系统
信息只。这包括不能在运行时更改的系统变量;因此,集群配置文件中没有针对它们的相应部分。可以看到它们的前缀是******系统******
)的输出ndb_config——configinfo
。 -
命令行格式 ——类型=名称
类型 枚举 默认值 (没有)
有效值 ndbd
mysqld
ndb_mgmd
筛选结果,以便只有配置值应用于指定的节点
node_type
(ndbd
,mysqld
,或ndb_mgmd
)返回。 -
命令行格式 ——帮助
原因ndb_config打印可用选项列表,然后退出。
-
命令行格式 ——版本
原因ndb_config打印版本信息字符串,然后退出。
-
命令行格式 ——configinfo xml
类型 布尔 默认值 假
导致ndb_config
——configinfo
通过添加此选项来提供XML输出。这个例子显示了输出的一部分:shell> ndb_config——configinfo——xml
… …请注意生成的XML输出ndb_config
——configinfo
——xml
使用每个元素一行来格式化;为了便于阅读,我们在前面的示例和后面的示例中添加了额外的空白。这对于使用该输出的应用程序来说应该没有任何区别,因为大多数XML处理器要么理所当然地忽略不必要的空白,要么可以指示这样做。XML输出还表明,更改给定参数时需要使用
——初始
选择。这可以通过an的存在来证明初始= " true "
属性中对应的<参数>
元素。此外,重启类型(系统
或节点
)也显示;如果给定的参数需要系统重新启动,则通过一个重启= "系统"
属性中对应的<参数>
元素。的值集无盘
参数要求系统初始重新启动,如下所示(使用重新启动
和最初的
属性突出显示可见性):最初重启= "系统" = " true "/>
目前,没有
最初的
属性包含在XML输出中<参数>
与不需要初始重新启动的参数相对应的元件;换句话说,初始= " false "
是默认值,值是假
如果该属性不存在,则应该假定。类似地,默认的重启类型为节点
(即在线或”滚动”重新启动集群),但是重新启动
属性只有在重启类型为时才包含系统
(这意味着必须同时关闭所有集群节点,然后重新启动)。参数在XML输出中表示已弃用的参数
弃用
属性,如下所示:弃用= " true "/>
在这种情况下,
评论
引用取代已弃用参数的一个或多个参数。类似于最初的
,弃用
属性仅在参数被弃用时使用弃用= " true "
,并且对于未弃用的参数根本不会出现。(错误# 21127135)所需的参数用
强制= " true "
,如下所示:强制= " true "min = " 1 " max = " 255 " / >
在很大程度上与
最初的
或弃用
属性只显示需要初始重新启动或已弃用的参数强制性的
属性仅在实际需要给定参数时才包含。重要的的
——xml
选项只能与——configinfo
选择。使用——xml
没有——configinfo
失败并出现错误。与此程序用于获取当前配置数据的选项不同,
——configinfo
和——xml
使用从NDB集群源获取的信息ndb_config是编译。因此,不能连接到正在运行的NDB集群或访问config.ini
或my.cnf
这两个选项都需要文件。 -
命令行格式 ——print-defaults
打印程序参数列表并退出。
-
命令行格式 ——defaults-file =路径
类型 字符串 默认值 (没有)
仅从给定文件读取默认选项。
-
命令行格式 ——defaults-extra-file =路径
类型 字符串 默认值 (没有)
在读取全局文件后读取给定文件。
-
命令行格式 ——defaults-group-suffix =字符串
类型 字符串 默认值 (没有)
还可以使用concat(组,后缀)读取组。
-
命令行格式 ——登录路径=路径
类型 字符串 默认值 (没有)
从登录文件中读取给定路径。
-
命令行格式 ——帮助
显示帮助文本并退出。
-
命令行格式 ——连接字符串=连接字符串
类型 字符串 默认值 (没有)
-
命令行格式 ——ndb-mgmd-host =连接字符串
类型 字符串 默认值 (没有)
-
命令行格式 ——ndb-nodeid = #
类型 整数 默认值 (没有)
为该节点设置节点ID,覆盖由
——ndb-connectstring
。 -
命令行格式 ——核心文件
错误时写入核心文件;用于调试。
-
命令行格式 ——character-sets-dir =路径
包含字符集的目录。
-
命令行格式 ——connect-retries = #
类型 整数 默认值 12
最小值 0
最大值 12
在放弃之前重试连接的次数。
-
命令行格式 ——connect-retry-delay = #
类型 整数 默认值 5
最小值 0
最大值 5
在两次尝试联系管理服务器之间等待的秒数。
——ndb-optimized-node-selection
命令行格式 ——ndb-optimized-node-selection
为事务选择节点启用优化。默认启用;使用
——skip-ndb-optimized-node-selection
禁用。
结合其他ndb_config选项(例如——查询
或——类型
),——configinfo
(有或没有——xml
选项不支持。目前,如果您尝试这样做,通常的结果是所有其他选项除了——configinfo
或——xml
都被忽略了。但是,这种行为不能得到保证,并且随时可能发生变化。此外,既然ndb_config,与the连用——configinfo
选项,不访问NDB集群或读取任何文件,尝试指定其他选项,例如——ndb-connectstring
或——配置文件
与——configinfo
没有任何意义。
例子
获取集群中各节点的节点ID和节点类型。
Shell > ./ndb_config——query=nodeid,type——fields=':'——rows='\n' 1:ndbd 2:ndbd 3:ndbd 4:ndbd 5:ndb_mgmd 6:mysqld 7:mysqld 8:mysqld 9:mysqld
在本例中,我们使用
——字段
选项,用冒号分隔每个节点的ID和类型(:
),以及——行
选项,将每个节点的值放在输出中的新行上。生成一个连接字符串,可以被数据、SQL和API节点用来连接到管理服务器。
Shell > ./ndb_config——config-file=usr/local/mysql/cluster-data/config.ini \——query=hostname,portnumber——fields=:——rows=,——type=ndb_mgmd 198.51.100.179:1186
这是对ndb_config只检查数据节点(使用
——类型
选项),并显示每个节点的ID和主机名的值,以及为其设置的值DataMemory
和DataDir
参数:Shell > ./ndb_config——type=ndbd——query=nodeid,host, datammemory,datadir -f ': ' -r '\n' 1: 198.51.100.193: 83886080: /usr/local/mysql/cluster-data 2: 198.51.100.112: 83886080: /usr/local/mysql/cluster-data 3: 198.51.100.176: 83886080: /usr/local/mysql/cluster-data 4: 198.51.100.119: 83886080: /usr/local/mysql/cluster-data
在本例中,我们使用了短选项
- f
和- r
分别用于设置字段分隔符和行分隔符,以及短选项q
传递要获取的参数列表。要排除除特定主机之外的任何主机的结果,请使用
——主机
选择:Shell > ./ndb_config——host=198.51.100.176 -f: -r '\n' -q id,输入3:ndbd 5:ndb_mgmd
在这个例子中,我们也使用了缩略形式
q
确定要查询的属性。方法将结果限制为具有特定ID的节点
——nodeid
选择。