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
類型 列舉 預設值 寬鬆
有效值 寬鬆
嚴格
設定連線至管理伺服器所需的 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 Cluster 版本中的行為相同。
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)
。