ndb_waiter 会重复(每隔 100 毫秒)打印所有集群数据节点的状态,直到集群达到给定状态或 --timeout
限时结束,然后退出。默认情况下,它等待集群达到 STARTED
状态,其中所有节点都已启动并连接到集群。这可以通过使用 --no-contact
和 --not-started
选项来覆盖。
此实用程序报告的节点状态如下
下表显示了可以与 ndb_waiter 一起使用的选项。其他说明在表后。
用法
ndb_waiter [-c connection_string]
其他选项
-
命令行格式 --character-sets-dir=path
包含字符集的目录。
-
命令行格式 --connect-retries=#
类型 整数 默认值 12
最小值 0
最大值 12
在放弃之前重试连接的次数。
-
命令行格式 --connect-retry-delay=#
类型 整数 默认值 5
最小值 0
最大值 5
尝试联系管理服务器之间等待的秒数。
-
命令行格式 --connect-string=connection_string
类型 字符串 默认值 [无]
与
--ndb-connectstring
相同。 -
命令行格式 --core-file
在出错时写入核心文件;用于调试。
-
命令行格式 --defaults-extra-file=path
类型 字符串 默认值 [无]
在读取全局文件后读取给定文件。
-
命令行格式 --defaults-file=path
类型 字符串 默认值 [无]
仅从给定文件中读取默认选项。
-
命令行格式 --defaults-group-suffix=string
类型 字符串 默认值 [无]
还读取具有 concat(group, suffix) 的组。
-
命令行格式 --login-path=path
类型 字符串 默认值 [无]
从登录文件中读取给定路径。
-
命令行格式 --no-login-paths
跳过从登录路径文件中读取选项。
-
命令行格式 --help
显示帮助文本并退出。
-
命令行格式 --ndb-connectstring=connection_string
类型 字符串 默认值 [无]
为连接到 ndb_mgmd 设置连接字符串。语法:
[nodeid=
。覆盖id
;][host=]hostname
[:port
]NDB_CONNECTSTRING
和my.cnf
中的条目。 -
命令行格式 --ndb-mgm-tls=level
类型 枚举 默认值 relaxed
有效值 relaxed
strict
设置连接到管理服务器所需的 TLS 支持级别;
relaxed
或strict
之一。relaxed
(默认值)表示会尝试建立 TLS 连接,但不需要成功;strict
表示连接需要 TLS。 -
命令行格式 --ndb-mgmd-host=connection_string
类型 字符串 默认值 [无]
与 --
ndb-connectstring
相同。 -
命令行格式 --ndb-nodeid=#
类型 整数 默认值 [无]
为该节点设置节点 ID,覆盖由
--ndb-connectstring
设置的任何 ID。 --ndb-optimized-node-selection
命令行格式 --ndb-optimized-node-selection
为事务节点选择启用优化。默认情况下启用;使用
--skip-ndb-optimized-node-selection
禁用。-
命令行格式 --ndb-tls-search-path=list
类型 路径名 默认值(Unix) $HOME/ndb-tls
默认值(Windows) $HOMEDIR/ndb-tls
指定要搜索 CA 文件的目录列表。在 Unix 平台上,目录名称用冒号 (
:
) 分隔;在 Windows 系统上,分号字符 (;
) 用作分隔符。目录引用可以是相对的或绝对的;它可以包含一个或多个环境变量,每个变量用前缀美元符号 ($
) 表示,并在使用前进行扩展。搜索从最左边的命名目录开始,并从左到右进行,直到找到文件为止。空字符串表示空搜索路径,这会导致所有搜索失败。由单个点 (
.
) 组成的字符串表示搜索路径仅限于当前工作目录。如果没有提供搜索路径,则使用编译后的默认值。此值取决于使用的平台:在 Windows 上,它是
\ndb-tls
;在其他平台(包括 Linux)上,它是$HOME/ndb-tls
。这可以通过使用-DWITH_NDB_TLS_SEARCH_PATH
编译 NDB 集群来覆盖。 --no-contact
,-n
代替等待
STARTED
状态,ndb_waiter 会继续运行,直到集群达到NO_CONTACT
状态,然后退出。-
命令行格式 --no-defaults
不从除登录文件之外的任何选项文件中读取默认选项。
代替等待
STARTED
状态,ndb_waiter 会继续运行,直到集群达到NOT_STARTED
状态,然后退出。使用此选项时,ndb_waiter 不会等待列出的 ID 的节点。列表用逗号分隔;可以使用连字符表示范围,如下所示
$> ndb_waiter --nowait-nodes=1,3,7-9
重要请不要将此选项与
--wait-nodes
选项一起使用。-
命令行格式 --print-defaults
打印程序参数列表并退出。
--timeout=
,seconds
-t
seconds
等待时间。如果在指定的秒数内未达到所需状态,则程序退出。默认值为 120 秒(1200 个报告周期)。
程序等待集群进入单用户模式。
-
命令行格式 --usage
显示帮助文本并退出;与
--help
相同。 -
命令行格式 --verbose=#
类型 整数 默认值 2
最小值 0
最大值 2
控制打印输出的详细级别。可能的级别及其影响在此列出
0
: 不打印(仅返回退出代码;有关退出代码,请参见下文)。1
: 仅打印最终连接状态。2
: 每当检查到状态时都打印状态。这与 8.4 之前版本的 NDB 集群中的行为相同。
在此列出了 ndb_waiter 返回的退出代码及其含义
0
: 成功。1
: 等待超时。2
: 参数错误,例如无效的节点 ID。3
: 无法连接到管理服务器。
-
命令行格式 --version
显示版本信息并退出。
--wait-nodes=
,list
-w
list
使用此选项时,ndb_waiter 仅等待列出的节点 ID。该列表以逗号分隔;范围可以使用连字符表示,如下所示
$> ndb_waiter --wait-nodes=2,4-6,10
重要不要将此选项与
--nowait-nodes
选项一起使用。
示例输出。 以下是 ndb_waiter 在 4 节点集群中运行时的输出,其中两个节点已关闭,然后手动启动。重复的报告(用 ...
表示)被省略。
$> ./ndb_waiter -c localhost
Connecting to mgmsrv at (localhost)
State node 1 STARTED
State node 2 NO_CONTACT
State node 3 STARTED
State node 4 NO_CONTACT
Waiting for cluster enter state STARTED
...
State node 1 STARTED
State node 2 UNKNOWN
State node 3 STARTED
State node 4 NO_CONTACT
Waiting for cluster enter state STARTED
...
State node 1 STARTED
State node 2 STARTING
State node 3 STARTED
State node 4 NO_CONTACT
Waiting for cluster enter state STARTED
...
State node 1 STARTED
State node 2 STARTING
State node 3 STARTED
State node 4 UNKNOWN
Waiting for cluster enter state STARTED
...
State node 1 STARTED
State node 2 STARTING
State node 3 STARTED
State node 4 STARTING
Waiting for cluster enter state STARTED
...
State node 1 STARTED
State node 2 STARTED
State node 3 STARTED
State node 4 STARTING
Waiting for cluster enter state STARTED
...
State node 1 STARTED
State node 2 STARTED
State node 3 STARTED
State node 4 STARTED
Waiting for cluster enter state STARTED
如果未指定连接字符串,则 ndb_waiter 尝试连接到 localhost
上的管理服务器,并报告 Connecting to mgmsrv at (null)
。