ndb_top 會在終端機中顯示關於 NDB Cluster 資料節點上 NDB 執行緒 CPU 使用率的執行資訊。每個執行緒在輸出中由兩行表示,第一行顯示系統統計資訊,第二行顯示執行緒的測量統計資訊。
ndb_top 從 MySQL NDB Cluster 7.6.3 開始提供。
用法
ndb_top [-h hostname] [-t port] [-u user] [-p pass] [-n node_id]
ndb_top 連線到作為叢集 SQL 節點執行的 MySQL Server。依預設,它嘗試連線到在 localhost 和 3306 連接埠上執行的 mysqld,作為未指定密碼的 MySQL root 使用者。您可以使用 --host (-h) 和 --port (-t) 分別覆寫預設主機和連接埠。若要指定 MySQL 使用者和密碼,請使用 --user (-u) 和 --passwd (-p) 選項。此使用者必須能夠讀取 ndbinfo 資料庫中的表格 ( ndb_top 使用來自 ndbinfo.cpustat 和相關表格的資訊)。
如需 MySQL 使用者帳戶和密碼的詳細資訊,請參閱第 8.2 節「存取控制和帳戶管理」。
輸出可以純文字或 ASCII 圖表的形式提供;您可以使用 --text (-x) 和 --graph (-g) 選項來分別指定。這兩種顯示模式提供相同的資訊;它們可以同時使用。至少必須使用一種顯示模式。
支援圖表的色彩顯示,且預設為啟用 (--color 或 -c 選項)。啟用色彩支援後,圖表顯示會以藍色顯示 OS 使用者時間,以綠色顯示 OS 系統時間,並將閒置時間顯示為空白。對於測量的負載,藍色用於執行時間,黃色用於傳送時間,紅色用於花費在傳送緩衝區已滿等待的時間,而空白空間則用於閒置時間。圖表顯示中顯示的百分比是所有非閒置執行緒的百分比總和。色彩目前無法設定;您可以使用 --skip-color 改為使用灰階。
排序檢視 (--sort、-r) 是根據測量負載和 OS 回報的負載的最大值。可以使用 --measured-load (-m) 和 --os-load (-o) 選項來啟用和停用這些顯示。至少必須啟用其中一個負載的顯示。
程式會嘗試從具有 --node-id (-n) 選項所給定節點 ID 的資料節點取得統計資料;如果未指定,則為 1。ndb_top 無法提供其他類型節點的資訊。
檢視會自行調整以符合終端機視窗的高度和寬度;支援的最小寬度為 76 個字元。
啟動後,ndb_top 會持續執行直到強制結束;您可以使用 Ctrl-C 來結束程式。顯示畫面每秒更新一次;若要設定不同的延遲間隔,請使用 --sleep-time (-s)。
ndb_top 可在 macOS、Linux 和 Solaris 上使用。目前 Windows 平台不支援它。
下表包含 NDB Cluster 程式 ndb_top 特有的所有選項。其他描述在表格之後。
其他選項
--color、-c命令列格式 --color以色彩顯示 ASCII 圖形;使用
--skip-colors來停用。-
命令列格式 --defaults-extra-file=路徑類型 字串 預設值 [無]在讀取全域檔案之後讀取指定的檔案。
-
命令列格式 --defaults-file=路徑類型 字串 預設值 [無]僅從指定的檔案讀取預設選項。
-
命令列格式 --defaults-group-suffix=字串類型 字串 預設值 [無]也讀取具有 concat(群組, 字尾) 的群組。
--graph、-g命令列格式 --graph使用圖形顯示資料;使用
--skip-graphs來停用。此選項或--text必須為 true;這兩個選項可能都為 true。--help、-?命令列格式 --help顯示程式使用資訊。
--host[=名稱]、-h命令列格式 --host=字串類型 字串 預設值 localhost要連線的 MySQL Server 主機名稱或 IP 位址。
-
命令列格式 --login-path=路徑類型 字串 預設值 [無]從登入檔案讀取指定的路徑。
-
命令列格式 --no-login-paths略過從登入路徑檔案讀取選項。
-
命令列格式 --measured-load顯示執行緒測量的負載。此選項或
--os-load必須為 true;這兩個選項可能都為 true。 -
命令列格式 --no-defaults不要從登入檔案以外的任何選項檔案讀取預設選項。
--node-id[=#]、-n命令列格式 --node-id=#類型 整數 預設值 1監看具有此節點 ID 的資料節點。
--os-load、-o命令列格式 --os-load顯示作業系統測量的負載。此選項或
--measured-load必須為 true;這兩個選項可能都為 true。--password[=密碼]、-p命令列格式 --password=密碼類型 字串 預設值 NULL使用此密碼和
--user指定的 MySQL 使用者連線到 MySQL Server。此密碼僅與 MySQL 使用者帳戶相關聯,與用於加密
NDB備份的密碼沒有任何關聯。--port[=#]、-P命令列格式 --port=#類型 整數 預設值 3306連線到 MySQL Server 時要使用的連接埠號碼。
(先前,此選項的簡短形式為
-t,該形式已重新調整為--text的簡短形式。)-
命令列格式 --print-defaults列印程式引數清單並結束。
--sleep-time[=秒數],-s命令列格式 --sleep-time=#類型 整數 預設值 1顯示畫面更新之間的等待時間,單位為秒。
--socket=,檔案路徑-S命令列格式 --socket=路徑類型 路徑名稱 預設值 [無]使用指定的 socket 檔案進行連線。
--sort,-r命令列格式 --sort依使用量排序執行緒;使用
--skip-sort來停用。--text,-t命令列格式 --text使用文字顯示資料。這個選項或
--graph必須為 true;兩個選項可以同時為 true。(此選項的簡短形式在舊版的 NDB Cluster 中為
-x,但現在已不再支援。)-
命令列格式 --usage顯示說明文字並結束;與
--help相同。 --user[=名稱],-u命令列格式 --user=名稱類型 字串 預設值 root以這個 MySQL 使用者身分連線。通常需要使用
--password選項提供的密碼。
範例輸出。 下圖顯示在 Linux 系統上的終端視窗中執行 ndb_top 的情況,該系統上一個 ndbmtd 資料節點處於中等負載狀態。這裡,程式是使用 ndb_top -n8 -x 呼叫的,以同時提供文字和圖形輸出。
ndb_top 也會顯示執行緒的自旋時間,以綠色顯示。