ndb_index_stat 提供關於 NDB
表格索引的每個片段統計資訊。這包括快取版本和存取時間、每個分割區的索引項目數,以及索引的記憶體消耗。
用法
若要取得關於給定 NDB
表格的基本索引統計資訊,請依照此處所示的方式叫用 ndb_index_stat,將表格名稱作為第一個引數,並使用 --database
(-d
) 選項,在其後立即指定包含此表格的資料庫名稱
ndb_index_stat table -d database
在此範例中,我們使用 ndb_index_stat 來取得關於 test
資料庫中名為 mytable
的 NDB
表格的此類資訊
$> ndb_index_stat -d test mytable
table:City index:PRIMARY fragCount:2
sampleVersion:3 loadTime:1399585986 sampleCount:1994 keyBytes:7976
query cache: valid:1 sampleCount:1994 totalBytes:27916
times in ms: save: 7.133 sort: 1.974 sort per sample: 0.000
sampleVersion
是擷取統計資料之快取的版本號碼。執行帶有 --update
選項的 ndb_index_stat 會導致 sampleVersion 遞增。
loadTime
顯示上次更新快取的時間。這表示為自 Unix Epoch 以來的秒數。
sampleCount
是每個分割區找到的索引項目數。您可以將其乘以片段數 (顯示為 fragCount
) 來估計項目總數。
雖然後兩者提供了整個表格的視圖,但可以將 sampleCount
與 SHOW INDEX
或 INFORMATION_SCHEMA.STATISTICS
的基數進行比較,而 ndb_index_stat 提供每個片段的平均值。
keyBytes
是索引使用的位元組數。在此範例中,主索引鍵是一個整數,每個索引需要四個位元組,因此在此情況下,可以依照此處所示的方式計算 keyBytes
keyBytes = sampleCount * (4 bytes per index) = 1994 * 4 = 7976
此資訊也可以使用來自 INFORMATION_SCHEMA.COLUMNS
的對應欄定義取得 (這需要 MySQL Server 和 MySQL 用戶端應用程式)。
totalBytes
是表格上所有索引所消耗的總記憶體,以位元組為單位。
先前範例中顯示的計時是特定於每次叫用 ndb_index_stat。
--verbose
選項提供一些額外輸出,如此處所示
$> ndb_index_stat -d test mytable --verbose
random seed 1337010518
connected
loop 1 of 1
table:mytable index:PRIMARY fragCount:4
sampleVersion:2 loadTime:1336751773 sampleCount:0 keyBytes:0
read stats
query cache created
query cache: valid:1 sampleCount:0 totalBytes:0
times in ms: save: 20.766 sort: 0.001
disconnected
$>
如果程式的輸出是空的,這可能表示尚不存在任何統計資料。若要強制建立它們 (或在它們已存在時更新),請使用 --update
選項叫用 ndb_index_stat,或在 mysql 用戶端中對表格執行 ANALYZE TABLE
。
選項
下表包含特定於 NDB Cluster ndb_index_stat 公用程式的選項。其他描述列在表格之後。
-
命令列格式 --character-sets-dir=路徑
包含字元集的目錄。
-
命令列格式 --connect-retries=#
類型 整數 預設值 12
最小值 0
最大值 12
放棄之前重試連線的次數。
-
命令列格式 --connect-retry-delay=#
類型 整數 預設值 5
最小值 0
最大值 5
嘗試聯絡管理伺服器之間等待的秒數。
-
命令列格式 --connect-string=連線字串
類型 字串 預設值 [無]
與
--ndb-connectstring
相同。 -
命令列格式 --core-file
發生錯誤時寫入核心檔案;用於偵錯。
--database=
,name
-d
name
命令列格式 --database=name
類型 字串 預設值 [無]
最小值 最大值 包含正在查詢之表格的資料庫名稱。
-
命令列格式 --defaults-extra-file=路徑
類型 字串 預設值 [無]
在讀取全域檔案後讀取指定的檔案。
-
命令列格式 --defaults-file=路徑
類型 字串 預設值 [無]
僅從指定的檔案讀取預設選項。
-
命令列格式 --defaults-group-suffix=字串
類型 字串 預設值 [無]
同時讀取具有 concat(群組、字尾) 的群組。
-
命令列格式 --delete
刪除指定表格的索引統計資訊,停止先前設定的任何自動更新。
-
命令列格式 --dump
傾印查詢快取的內容。
-
命令列格式 --help
顯示說明文字並結束。
-
命令列格式 --login-path=路徑
類型 字串 預設值 [無]
從登入檔讀取指定的路徑。
-
命令列格式 --no-login-paths
略過從登入路徑檔案讀取選項。
-
命令列格式 --loops=#
類型 數值 預設值 0
最小值 0
最大值 MAX_INT
重複命令此次數(用於測試)。
-
命令列格式 --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-defaults
不從登入檔案以外的任何選項檔案讀取預設選項。
-
命令列格式 --print-defaults
列印程式引數清單並結束。
-
命令列格式 --query=#
類型 數值 預設值 0
最小值 0
最大值 MAX_INT
對第一個索引鍵屬性執行隨機範圍查詢(必須為無號整數)。
-
命令列格式 --sys-drop
在 NDB 核心中捨棄所有統計資料表格和事件。這會導致所有統計資料遺失。
-
命令列格式 --sys-create
在 NDB 核心中建立所有統計資料表格和事件。這僅在先前不存在任何統計資料表格和事件時才有效。
-
命令列格式 --sys-create-if-not-exist
在程式叫用時建立任何不存在的 NDB 系統統計資料表格或事件(或兩者)。
-
命令列格式 --sys-create-if-not-valid
在捨棄任何無效的 NDB 系統統計資料表格或事件後,建立任何不存在的 NDB 系統統計資料表格或事件。
-
命令列格式 --sys-check
驗證 NDB 核心中是否存在所有必要的系統統計資料表格和事件。
-
命令列格式 --sys-skip-tables
不要將任何
--sys-*
選項套用至任何統計資料表格。 -
命令列格式 --sys-skip-events
不要將任何
--sys-*
選項套用至任何事件。 -
命令列格式 --update
更新指定表格的索引統計資料,並重新啟動先前設定的任何自動更新。
-
命令列格式 --usage
顯示說明文字並結束;與
--help
相同。 -
命令列格式 --verbose
開啟詳細輸出。
-
命令列格式 --version
顯示版本資訊並結束。
ndb_index_stat 系統選項。 以下選項用於在 NDB 核心中產生和更新統計資料表格。這些選項不能與統計資料選項混合使用(請參閱 ndb_index_stat 統計資料選項)。
ndb_index_stat 統計資料選項。 此處列出的選項用於產生索引統計資料。它們適用於指定的表格和資料庫。它們不能與系統選項混合使用(請參閱 ndb_index_stat 系統選項)。