ndb_top 會在終端機中顯示 NDB 叢集資料節點上 NDB 執行緒的 CPU 使用率執行資訊。每個執行緒在輸出中以兩行表示,第一行顯示系統統計資料,第二行顯示執行緒的測量統計資料。
ndb_top 自 MySQL NDB 叢集 7.6.3 開始提供。
使用方式
ndb_top [-h hostname] [-t port] [-u user] [-p pass] [-n node_id]
ndb_top 連接到作為叢集 SQL 節點執行的 MySQL 伺服器。依預設,它會嘗試以未指定密碼的 MySQL root 使用者身分,連線到在 localhost 和連接埠 3306 上執行的 mysqld。您可以使用 --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 叢集程式 ndb_top 特有的所有選項。表格後面會提供其他說明。
其他選項
--color、-c命令列格式 --color以彩色顯示 ASCII 圖形;使用
--skip-colors停用。-
命令列格式 --defaults-extra-file=path類型 字串 預設值 [無]讀取全域檔案後讀取指定的檔案。
-
命令列格式 --defaults-file=path類型 字串 預設值 [無]只從指定的檔案讀取預設選項。
-
命令列格式 --defaults-group-suffix=string類型 字串 預設值 [無]也會讀取 concat(group, suffix) 的群組。
--graph、-g命令列格式 --graph使用圖形顯示資料;使用
--skip-graphs停用。此選項或--text必須為 true;兩個選項都可能為 true。--help、-?命令列格式 --help顯示程式使用方式資訊。
--host[=name]、-h命令列格式 --host=string類型 字串 預設值 localhost要連線的 MySQL 伺服器的主機名稱或 IP 位址。
-
命令列格式 --login-path=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[=password]、-p命令列格式 --password=password類型 字串 預設值 NULL使用此密碼和
--user指定的 MySQL 使用者連線到 MySQL 伺服器。此密碼僅與 MySQL 使用者帳戶相關聯,與加密
NDB備份所使用的密碼沒有任何關聯。--port[=#],-P命令列格式 --port=#類型 整數 預設值 3306連接到 MySQL 伺服器時使用的連接埠號碼。
(先前,此選項的簡短形式為
-t,後來被重新用於--text的簡短形式。)-
命令列格式 --print-defaults列印程式引數清單並結束。
--sleep-time[=seconds],-s命令列格式 --sleep-time=#類型 整數 預設值 1顯示更新之間的等待時間,以秒為單位。
-
命令列格式 --socket=path類型 路徑名稱 預設值 [無]使用指定的 socket 檔案進行連線。
--sort,-r命令列格式 --sort依使用率排序執行緒;使用
--skip-sort停用。--text,-t命令列格式 --text使用文字顯示資料。此選項或
--graph必須為真;兩個選項都可以為真。(此選項的簡短形式在舊版 NDB Cluster 中為
-x,但現在已不再支援。)-
命令列格式 --usage顯示說明文字並結束;與
--help相同。 --user[=name],-u命令列格式 --user=name類型 字串 預設值 root以此 MySQL 使用者身分連線。通常需要透過
--password選項提供的密碼。
範例輸出。下圖顯示在 Linux 系統的終端機視窗中執行 ndb_top 的畫面,該系統中的 ndbmtd 資料節點處於中度負載。在此範例中,程式已使用 ndb_top -n8 -x 叫用,以同時提供文字和圖形輸出
ndb_top 也會顯示執行緒的旋轉時間,以綠色顯示。