本節提供關於MySQL伺服器選項、伺服器和狀態變數的資訊,這些選項和變數是NDB叢集特有的。關於使用這些選項和變數的一般資訊,以及其他非NDB叢集特定的選項和變數,請參閱第 7.1 節,「MySQL伺服器」。
對於叢集組態檔(通常名為 config.ini
)中使用的NDB叢集組態參數,請參閱第 25.4 節,「NDB叢集的配置」。
本節提供與 NDB 叢集相關的 mysqld 伺服器選項的描述。關於非 NDB 叢集特定的 mysqld 選項的資訊,以及關於使用 mysqld 選項的一般資訊,請參閱第 7.1.7 節,「伺服器命令選項」。
關於其他 NDB 叢集程序使用的命令列選項的資訊,請參閱第 25.5 節,「NDB叢集程式」。
-
命令列格式 --ndbcluster[=value]
停用方式 skip-ndbcluster
類型 列舉 預設值 ON
有效值 OFF
FORCE
使用 NDB 叢集時,
NDBCLUSTER
儲存引擎是必要的。如果 mysqld 二進制檔包含對NDBCLUSTER
儲存引擎的支援,則預設會停用該引擎。使用--ndbcluster
選項來啟用它。使用--skip-ndbcluster
來明確停用該引擎。如果同時使用了
--initialize
,則會忽略--ndbcluster
選項(且NDB
儲存引擎不會啟用)。(將此選項與--initialize
一起使用既不必要也不理想。) --ndb-allow-copying-alter-table=[ON|OFF]
命令列格式 --ndb-allow-copying-alter-table[={OFF|ON}]
系統變數 ndb_allow_copying_alter_table
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
讓
ALTER TABLE
和其他 DDL 陳述式在NDB
表格上使用複製操作。設定為OFF
以防止這種情況發生;這樣做可能會提高關鍵應用程式的效能。--ndb-applier-allow-skip-epoch
命令列格式 --ndb-applier-allow-skip-epoch
系統變數 ndb_applier_allow_skip_epoch
範圍 全域 動態 否 SET_VAR
提示語適用否 與
--replica-skip-errors
一起使用,以使NDB
忽略已跳過的紀元交易。單獨使用時無效。-
命令列格式 --ndb-batch-size
系統變數 ndb_batch_size
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 32768
最小值 0
最大值 2147483648
單位 位元組 這會設定用於NDB交易批次的位元組大小。
--ndb-cluster-connection-pool=
#
命令列格式 --ndb-cluster-connection-pool
系統變數 ndb_cluster_connection_pool
系統變數 ndb_cluster_connection_pool
範圍 全域 範圍 全域 動態 否 動態 否 SET_VAR
提示語適用否 SET_VAR
提示語適用否 類型 整數 預設值 1
最小值 1
最大值 63
透過將此選項設定為大於 1 (預設值) 的值,mysqld 程序可以使用與叢集的多個連線,有效地模擬多個 SQL 節點。每個連線都需要叢集組態 (
config.ini
) 檔中的其自己的[api]
或[mysqld]
區段,並且會計入叢集支援的最大 API 連線數。假設您有 2 台叢集主機電腦,每台都執行一個 SQL 節點,該節點的 mysqld 程序是以
--ndb-cluster-connection-pool=4
啟動的;這表示叢集必須有 8 個 API 插槽可用於這些連線(而不是 2 個)。當 SQL 節點連線到叢集時,會設定所有這些連線,並以循環方式配置給執行緒。此選項僅在具有多個 CPU、多個核心或兩者的主機上執行 mysqld 時才有用。為了獲得最佳結果,該值應小於主機上可用的核心總數。將其設定為大於此值可能會嚴重降低效能。
重要事項由於每個使用連線集區的 SQL 節點都會佔用多個 API 節點插槽 — 每個插槽在叢集中都有其自己的節點 ID — 因此當啟動任何使用連線集區的 mysqld 程序時,您不應將節點 ID 作為叢集連線字串的一部分使用。
當使用
--ndb-cluster-connection-pool
選項時,在連線字串中設定節點 ID 會在 SQL 節點嘗試連線到叢集時導致節點 ID 配置錯誤。--ndb-cluster-connection-pool-nodeids=
list
命令列格式 --ndb-cluster-connection-pool-nodeids
系統變數 ndb_cluster_connection_pool_nodeids
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 設定 預設值 指定 SQL 節點用於連線到叢集的節點 ID 的逗號分隔清單。此清單中的節點數必須與
--ndb-cluster-connection-pool
選項設定的值相同。--ndb-blob-read-batch-bytes=
bytes
命令列格式 --ndb-blob-read-batch-bytes
系統變數 ndb_blob_read_batch_bytes
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 65536
最小值 0
最大值 4294967295
此選項可用於設定 NDB 叢集應用程式中
BLOB
資料讀取的批次大小(以位元組為單位)。當目前交易中要讀取的BLOB
資料量超過此批次大小時,會立即執行任何待定的BLOB
讀取操作。此選項的最大值為 4294967295;預設值為 65536。將其設定為 0 會停用
BLOB
讀取批次。注意在 NDB API 應用程式中,您可以使用
setMaxPendingBlobReadBytes()
和getMaxPendingBlobReadBytes()
方法控制BLOB
寫入批次。--ndb-blob-write-batch-bytes=
bytes
命令列格式 --ndb-blob-write-batch-bytes
系統變數 ndb_blob_write_batch_bytes
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 65536
最小值 0
最大值 4294967295
單位 位元組 此選項可用於設定 NDB Cluster 應用程式中
BLOB
資料寫入批次處理的大小 (以位元組為單位)。當目前交易中要寫入的BLOB
資料量超過此批次大小時,任何擱置的BLOB
寫入操作都會立即執行。此選項的最大值為 4294967295;預設值為 65536。將其設定為 0 會停用
BLOB
寫入批次處理。注意在 NDB API 應用程式中,您可以使用
setMaxPendingBlobWriteBytes()
和getMaxPendingBlobWriteBytes()
方法來控制BLOB
寫入批次處理。--ndb-connectstring=
connection_string
命令列格式 --ndb-connectstring
類型 字串 當使用
NDBCLUSTER
儲存引擎時,此選項會指定分發叢集組態資料的管理伺服器。請參閱 第 25.4.3.3 節「NDB Cluster 連接字串」,以了解語法。--ndb-default-column-format=[FIXED|DYNAMIC]
命令列格式 --ndb-default-column-format={FIXED|DYNAMIC}
系統變數 ndb_default_column_format
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 列舉 預設值 FIXED
有效值 FIXED
DYNAMIC
設定新資料表的預設
COLUMN_FORMAT
和ROW_FORMAT
(請參閱 第 15.1.20 節「CREATE TABLE 陳述式」)。預設值為FIXED
。--ndb-deferred-constraints=[0|1]
命令列格式 --ndb-deferred-constraints
系統變數 ndb_deferred_constraints
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 0
最小值 0
最大值 1
控制是否將唯一索引上的約束檢查延遲到提交時間,前提是支援此類檢查。
0
為預設值。此選項通常不需要用於 NDB Cluster 或 NDB Cluster 複寫的操作,主要用於測試。
-
命令列格式 --ndb-schema-dist-timeout=#
系統變數 ndb_schema_dist_timeout
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 整數 預設值 120
最小值 5
最大值 1200
單位 秒 指定此 mysqld 等待綱要操作完成的最長時間 (以秒為單位),然後將其標示為已逾時。
--ndb-distribution=[KEYHASH|LINHASH]
命令列格式 --ndb-distribution={KEYHASH|LINHASH}
系統變數 ndb_distribution
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 列舉 預設值 KEYHASH
有效值 LINHASH
KEYHASH
控制
NDB
資料表的預設分發方法。可以設定為KEYHASH
(金鑰雜湊) 或LINHASH
(線性雜湊)。KEYHASH
為預設值。-
命令列格式 --ndb-log-apply-status[={OFF|ON}]
系統變數 ndb_log_apply_status
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 布林 預設值 OFF
導致複本 mysqld 使用自己的伺服器 ID,而不是來源的伺服器 ID,將從其直接來源接收到的任何更新記錄到其自身二進位記錄中的
mysql.ndb_apply_status
資料表中。在環狀或鏈狀複寫設定中,這允許此類更新傳播到設定為目前 mysqld 複本的任何 MySQL 伺服器的mysql.ndb_apply_status
資料表。在鏈狀複寫設定中,使用此選項可讓下游 (複本) 叢集知道它們相對於所有上游貢獻者 (來源) 的位置。
在環狀複寫設定中,此選項會導致
ndb_apply_status
資料表的變更完成整個迴路,最終傳播回原始的 NDB Cluster。這也允許作為複寫來源的叢集查看其變更 (時間點) 何時已套用至圓圈中的其他叢集。除非使用
--ndbcluster
選項啟動 MySQL 伺服器,否則此選項無效。 --ndb-log-empty-epochs=[ON|OFF]
命令列格式 --ndb-log-empty-epochs[={OFF|ON}]
系統變數 ndb_log_empty_epochs
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
即使啟用
log_replica_updates
,也會導致在沒有變更時的時間點寫入到ndb_apply_status
和ndb_binlog_index
資料表中。預設會停用此選項。停用
--ndb-log-empty-epochs
會導致沒有變更的時間點交易不會寫入二進位記錄,儘管即使是空的的時間點,仍然會在ndb_binlog_index
中寫入一個資料列。由於
--ndb-log-empty-epochs=1
會導致ndb_binlog_index
資料表的大小獨立於二進位記錄的大小而增加,因此使用者應準備好管理此資料表的成長,即使他們預期叢集在大部分時間都處於閒置狀態。--ndb-log-empty-update=[ON|OFF]
命令列格式 --ndb-log-empty-update[={OFF|ON}]
系統變數 ndb_log_empty_update
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
即使啟用
log_replica_updates
,也會導致沒有產生變更的更新寫入到ndb_apply_status
和ndb_binlog_index
資料表中。預設會停用此選項 (
OFF
)。停用--ndb-log-empty-update
會導致沒有變更的更新不會寫入二進位記錄。--ndb-log-exclusive-reads=[0|1]
命令列格式 --ndb-log-exclusive-reads[={OFF|ON}]
系統變數 ndb_log_exclusive_reads
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 0
使用此選項啟動伺服器會導致主索引鍵讀取以獨佔鎖定記錄,這允許基於讀取衝突的 NDB Cluster 複寫衝突偵測和解決方案。您也可以透過將
ndb_log_exclusive_reads
系統變數的值分別設定為 1 或 0,來在執行階段啟用和停用這些鎖定。0 (停用鎖定) 為預設值。如需詳細資訊,請參閱 讀取衝突偵測和解決方案。
-
命令列格式 --ndb-log-fail-terminate
系統變數 ndb_log_fail_terminate
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 布林 預設值 FALSE
當指定此選項,且無法完整記錄所有找到的資料列事件時,mysqld 處理程序會終止。
-
命令列格式 --ndb-log-orig[={OFF|ON}]
系統變數 ndb_log_orig
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 布林 預設值 OFF
將原始伺服器 ID 和時間點記錄在
ndb_binlog_index
資料表中。注意這使得給定的時間點可以在
ndb_binlog_index
中有多個資料列,每個原始時間點一個資料列。如需詳細資訊,請參閱 第 25.7.4 節「NDB Cluster 複寫綱要和資料表」。
--ndb-log-transaction-dependency
命令列格式 --ndb-log-transaction-dependency={true|false}
系統變數 ndb_log_transaction_dependency
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 布林 預設值 false
導致
NDB
二進位記錄執行緒計算每個寫入到二進位記錄的交易的交易相依性。預設值為FALSE
。此選項無法在執行階段設定;對應的
ndb_log_transaction_dependency
系統變數為唯讀。-
命令列格式 --ndb-log-transaction-id[={OFF|ON}]
系統變數 ndb_log_transaction_id
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 布林 預設值 OFF
導致複本 mysqld 將 NDB 交易 ID 寫入二進位記錄的每個資料列中。預設值為
FALSE
。使用
NDB$EPOCH_TRANS()
函數啟用 NDB Cluster 複寫衝突偵測和解決方案時,需要--ndb-log-transaction-id
(請參閱 NDB$EPOCH_TRANS())。如需詳細資訊,請參閱 第 25.7.12 節「NDB Cluster 複寫衝突解決方案」。 -
命令列格式 --ndb-log-update-as-write[={OFF|ON}]
系統變數 ndb_log_update_as_write
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
來源上的更新是否以更新 (
OFF
) 或寫入 (ON
) 的形式寫入二進位記錄。當啟用此選項,且同時停用--ndb-log-updated-only
和--ndb-log-update-minimal
時,不同類型的操作會依下列清單所述的方式記錄INSERT
:記錄為沒有前映像的WRITE_ROW
事件;後映像會記錄所有資料行。UPDATE
:記錄為沒有前映像的WRITE_ROW
事件;後映像會記錄所有資料行。DELETE
:記錄為前映像中記錄所有資料行的DELETE_ROW
事件;不記錄後映像。
此選項可與先前提及的其他兩個 NDB 記錄選項結合使用於 NDB 複寫衝突解決方案;如需詳細資訊,請參閱 ndb_replication 資料表。
-
命令列格式 --ndb-log-updated-only[={OFF|ON}]
系統變數 ndb_log_updated_only
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
mysqld 是否僅將更新 (
ON
) 或完整資料列 (OFF
) 寫入二進位記錄。當啟用此選項,且同時停用--ndb-log-update-as-write
和--ndb-log-update-minimal
時,不同類型的操作會依下列清單所述的方式記錄INSERT
:記錄為沒有前映像的WRITE_ROW
事件;後映像會記錄所有資料行。UPDATE
:記錄為UPDATE_ROW
事件,前映像和後映像中都存在主索引鍵資料行和已更新的資料行。DELETE
:記錄為前映像中包含主索引鍵資料行的DELETE_ROW
事件;不記錄後映像。
此選項可與先前提及的其他兩個 NDB 記錄選項結合使用於 NDB 複寫衝突解決方案;如需這些選項如何相互作用的詳細資訊,請參閱 ndb_replication 資料表。
-
命令列格式 --ndb-log-update-minimal[={OFF|ON}]
系統變數 ndb_log_update_minimal
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
以最小的方式記錄更新,方法是僅在前映像中寫入主索引鍵值,並僅在後映像中寫入已變更的資料行。如果複寫到
NDB
以外的儲存引擎,這可能會導致相容性問題。當啟用此選項,且同時停用--ndb-log-updated-only
和--ndb-log-update-as-write
時,不同類型的操作會依下列清單所述的方式記錄INSERT
:記錄為沒有前映像的WRITE_ROW
事件;後映像會記錄所有資料行。UPDATE
:記錄為UPDATE_ROW
事件,其中 before 映像包含主鍵欄位;除了主鍵欄位以外的**所有**欄位都記錄在 after 映像中。DELETE
:記錄為DELETE_ROW
事件,其中 before 映像包含所有欄位;不記錄 after 映像。
此選項可與先前提及的其他兩個 NDB 記錄選項結合使用於 NDB 複寫衝突解決方案;如需詳細資訊,請參閱 ndb_replication 資料表。
--ndb-mgm-tls=[relaxed|strict]
命令列格式 --ndb-mgm-tls=[strict|relaxed]
系統變數 ndb_mgm_tls
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 列舉 預設值 relaxed
有效值 relaxed
strict
設定連線至 NDB Cluster 的 TLS 連線所需的 TLS 支援等級;值為
relaxed
或strict
其中之一。relaxed
表示嘗試 TLS 連線,但成功並非必要;strict
表示必須使用 TLS 連線。預設值為relaxed
。-
命令列格式 --ndb-mgmd-host=主機名稱[:埠號]
類型 字串 預設值 localhost:1186
可用於設定程式連線的單一管理伺服器的主機和埠號。如果程式的連線資訊中需要節點 ID 或多個管理伺服器(或兩者)的參照,請改用
--ndb-connectstring
選項。 -
命令列格式 --ndb-nodeid=#
狀態變數 Ndb_cluster_node_id
範圍 全域 動態 否 類型 整數 預設值 不適用
最小值 1
最大值 255
最大值 63
在 NDB Cluster 中設定此 MySQL 伺服器的節點 ID。
--ndb-nodeid
選項會覆寫任何以--ndb-connectstring
設定的節點 ID,無論這兩個選項的使用順序為何。此外,如果使用
--ndb-nodeid
,則必須在config.ini
的[mysqld]
或[api]
區段中找到相符的節點 ID,或者檔案中必須有一個「“開放”」的[mysqld]
或[api]
區段(也就是說,沒有指定NodeId
或Id
參數的區段)。如果節點 ID 是以連線字串的一部分指定,則情況也是如此。無論節點 ID 如何決定,它都會顯示為
SHOW STATUS
輸出中的全域狀態變數Ndb_cluster_node_id
的值,以及SHOW ENGINE NDBCLUSTER STATUS
輸出中connection
列中的cluster_node_id
。如需有關 NDB Cluster SQL 節點節點 ID 的詳細資訊,請參閱 第 25.4.3.7 節,「在 NDB Cluster 中定義 SQL 和其他 API 節點」。
-
命令列格式 --ndbinfo[=value]
類型 列舉 預設值 ON
有效值 ON
OFF
FORCE
啟用
ndbinfo
資訊資料庫的外掛程式。預設情況下,只要啟用NDBCLUSTER
,此選項就會設定為 ON。 --ndb-optimization-delay=
milliseconds
命令列格式 --ndb-optimization-delay=#
系統變數 ndb_optimization_delay
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 10
最小值 0
最大值 100000
單位 毫秒 設定在
NDB
表格上執行OPTIMIZE TABLE
陳述式時,在多組列之間等待的毫秒數。預設值為 10。--ndb-optimized-node-selection
命令列格式 --ndb-optimized-node-selection
啟用交易節點選擇的最佳化功能。預設為啟用;使用
--skip-ndb-optimized-node-selection
停用。-
命令列格式 --ndb-tls-search-path=路徑
系統變數 ndb_tls_search_path
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 路徑名稱 預設值 (Unix) $HOME/tls
預設值 (Windows) $HOMEDIR/tls
要搜尋 NDB TLS 連線的 CA 和私密金鑰的目錄清單。在 Unix 平台上,清單以逗號分隔,在 Windows 上則以分號分隔。
--ndb-transid-mysql-connection-map=
state
命令列格式 --ndb-transid-mysql-connection-map[=state]
類型 列舉 預設值 ON
有效值 ON
OFF
FORCE
啟用或停用處理
INFORMATION_SCHEMA
資料庫中ndb_transid_mysql_connection_map
表格的外掛程式。接受ON
、OFF
或FORCE
其中一個值。ON
(預設值)會啟用外掛程式。OFF
會停用外掛程式,這會使ndb_transid_mysql_connection_map
無法存取。FORCE
會在此外掛程式載入和啟動失敗時,阻止 MySQL 伺服器啟動。您可以透過檢查
SHOW PLUGINS
的輸出,查看ndb_transid_mysql_connection_map
表格外掛程式是否正在執行。-
命令列格式 --ndb-wait-connected=#
系統變數 ndb_wait_connected
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 整數 預設值 120
預設值 30
最小值 0
最大值 31536000
單位 秒 此選項設定 MySQL 伺服器在接受 MySQL 用戶端連線之前,等待與 NDB Cluster 管理和資料節點建立連線的時間長度。時間以秒為單位指定。預設值為
30
。 -
命令列格式 --ndb-wait-setup=#
系統變數 ndb_wait_setup
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 整數 預設值 120
預設值 30
預設值 15
預設值 15
最小值 0
最大值 31536000
單位 秒 此變數顯示 MySQL 伺服器在逾時並將
NDB
視為無法使用之前,等待NDB
儲存引擎完成設定的時間長度。時間以秒為單位指定。預設值為30
。 -
命令列格式 --skip-ndbcluster
停用
NDBCLUSTER
儲存引擎。這是使用NDBCLUSTER
儲存引擎支援建置的二進位檔案的預設值;只有在明確給定--ndbcluster
選項時,伺服器才會為此儲存引擎配置記憶體和其他資源。如需範例,請參閱 第 25.4.1 節,「NDB Cluster 的快速測試設定」。
本節提供有關特定於 NDB Cluster 和 NDB
儲存引擎的 MySQL 伺服器系統變數的詳細資訊。如需非特定於 NDB Cluster 的系統變數,請參閱 第 7.1.8 節,「伺服器系統變數」。如需有關使用系統變數的一般資訊,請參閱 第 7.1.9 節,「使用系統變數」。
-
命令列格式 --ndb-autoincrement-prefetch-sz=#
系統變數 ndb_autoincrement_prefetch_sz
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 512
最小值 1
最大值 65536
決定自動遞增欄位中出現間隙的機率。將其設定為
1
以盡量減少此情況。將其設定為較高的值進行最佳化會使插入速度更快,但會降低在一批插入中使用連續自動遞增數字的可能性。此變數只會影響在陳述式之間提取的
AUTO_INCREMENT
ID 數目;在給定陳述式內,一次至少會取得 32 個 ID。重要事項此變數不會影響使用
INSERT ... SELECT
執行的插入作業。 -
命令列格式 --ndb-clear-apply-status[={OFF|ON}]
系統變數 ndb_clear_apply_status
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
預設情況下,執行
RESET REPLICA
會導致 NDB Cluster 複本清除其ndb_apply_status
表格中的所有列。您可以設定ndb_clear_apply_status=OFF
來停用此功能。 -
命令列格式 --ndb-conflict-role=值
系統變數 ndb_conflict_role
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 列舉 預設值 NONE
有效值 NONE
PRIMARY
SECONDARY
PASS
決定此 SQL 節點(和 NDB Cluster)在循環(「“主動-主動”」)複寫設定中的角色。
ndb_conflict_role
可以採用PRIMARY
、SECONDARY
、PASS
或NULL
(預設值)的任何一個值。必須先停止複本 SQL 執行緒,才能變更ndb_conflict_role
。此外,無法在PASS
與PRIMARY
或SECONDARY
的任一者之間直接變更;在這種情況下,您必須確保 SQL 執行緒已停止,然後先執行SET @@GLOBAL.ndb_conflict_role = 'NONE'
。此變數取代了已淘汰的
ndb_slave_conflict_role
。更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
-
命令列格式 --ndb-data-node-neighbour=#
系統變數 ndb_data_node_neighbour
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 0
最小值 0
最大值 255
設定一個「鄰近」資料節點的 ID — 也就是說,會選擇一個優先的非本機資料節點來執行交易,而不是選擇與 SQL 或 API 節點在同一主機上執行的資料節點。這用於確保在存取完全複製的資料表時,我們會在此資料節點上存取,以確保盡可能使用資料表的本機副本。這也可以用於為交易提供提示。
在節點的實體位置較近,因此網路吞吐量高於同一主機上的其他節點時,這可以改善資料存取時間。
有關更多資訊,請參閱第 15.1.20.12 節,「設定 NDB 註解選項」。
注意NDB API 應用程式提供一個等效的方法
set_data_node_neighbour()
。 -
命令列格式 --ndb-dbg-check-shares=#
系統變數 ndb_dbg_check_shares
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 0
最小值 0
最大值 1
設定為 1 時,檢查是否有任何殘留的共享。僅適用於除錯版本。
-
命令列格式 --ndb-default-column-format={FIXED|DYNAMIC}
系統變數 ndb_default_column_format
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 列舉 預設值 FIXED
有效值 FIXED
DYNAMIC
設定新資料表的預設
COLUMN_FORMAT
和ROW_FORMAT
(請參閱 第 15.1.20 節「CREATE TABLE 陳述式」)。預設值為FIXED
。 -
命令列格式 --ndb-deferred-constraints=#
系統變數 ndb_deferred_constraints
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 0
最小值 0
最大值 1
控制是否延遲檢查條件約束(如果支援)。預設值為
0
。NDB Cluster 或 NDB Cluster 複製的運作通常不需要此變數,它主要用於測試。
-
命令列格式 --ndb-distribution={KEYHASH|LINHASH}
系統變數 ndb_distribution
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 列舉 預設值 KEYHASH
有效值 LINHASH
KEYHASH
控制
NDB
資料表的預設分發方法。可以設定為KEYHASH
(金鑰雜湊) 或LINHASH
(線性雜湊)。KEYHASH
為預設值。 -
命令列格式 --ndb-eventbuffer-free-percent=#
系統變數 ndb_eventbuffer_free_percent
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 20
最小值 1
最大值 99
設定事件緩衝區 (ndb_eventbuffer_max_alloc) 配置的最大記憶體百分比,在達到最大值後,應在事件緩衝區中可用的百分比,然後再開始再次緩衝。
-
命令列格式 --ndb-eventbuffer-max-alloc=#
系統變數 ndb_eventbuffer_max_alloc
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 0
最小值 0
最大值 9223372036854775807
設定 NDB API 可以配置用於緩衝事件的最大記憶體量(以位元組為單位)。0 表示不設限,這是預設值。
-
命令列格式 ndb_extra_logging=#
系統變數 ndb_extra_logging
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 1
最小值 0
最大值 1
此變數啟用在 MySQL 錯誤日誌中記錄特定於
NDB
儲存引擎的資訊。當此變數設定為 0 時,寫入 MySQL 錯誤日誌的唯一特定於
NDB
的資訊與交易處理相關。如果設定為大於 0 但小於 10 的值,也會記錄NDB
資料表結構和連線事件,以及是否正在使用衝突解決方案,以及其他NDB
錯誤和資訊。如果值設定為 10 或更高,則有關NDB
內部資訊(例如叢集節點之間資料分佈的進度)也會寫入 MySQL 錯誤日誌。預設值為 1。 -
命令列格式 --ndb-force-send[={OFF|ON}]
系統變數 ndb_force_send
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
強制立即將緩衝區傳送到
NDB
,而無需等待其他執行緒。預設為ON
。 -
命令列格式 --ndb-fully-replicated[={OFF|ON}]
系統變數 ndb_fully_replicated
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
決定新的
NDB
資料表是否完全複製。可以使用CREATE TABLE
或ALTER TABLE
陳述式中的COMMENT="NDB_TABLE=FULLY_REPLICATED=..."
來覆寫單一資料表的此設定;有關語法和其他資訊,請參閱第 15.1.20.12 節,「設定 NDB 註解選項」。 -
命令列格式 --ndb-index-stat-enable[={OFF|ON}]
系統變數 ndb_index_stat_enable
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
在查詢最佳化中使用
NDB
索引統計資料。預設值為ON
。無論此選項的值為何,伺服器啟動時都會建立索引統計資料表。
-
命令列格式 --ndb-index-stat-option=value
系統變數 ndb_index_stat_option
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 字串 預設值 loop_checkon=1000ms,loop_idle=1000ms,loop_busy=100ms, update_batch=1,read_batch=4,idle_batch=32,check_batch=32, check_delay=1m,delete_batch=8,clean_delay=0,error_batch=4, error_delay=1m,evict_batch=8,evict_delay=1m,cache_limit=32M, cache_lowpct=90
此變數用於為 NDB 索引統計資料產生提供微調選項。此清單包含以逗號分隔的選項名稱和值組,且此清單不得包含任何空格字元。
設定
ndb_index_stat_option
時未使用的選項不會變更其預設值。例如,您可以設定ndb_index_stat_option = 'loop_idle=1000ms,cache_limit=32M'
。時間值可以選擇性地加上
h
(小時)、m
(分鐘) 或s
(秒)。毫秒值可以選擇性地使用ms
指定;毫秒值不能使用h
、m
或s
指定。) 整數值可以加上K
、M
或G
。下表顯示可以使用此變數設定的選項名稱。此表格也提供選項的簡要說明、其預設值,以及(如果適用)其最小值和最大值。
表格 25.19:ndb_index_stat_option 選項和值
名稱 說明 預設值/單位 最小值/最大值 loop_enable
1000 毫秒 0/4G loop_idle
閒置時睡眠的時間 1000 毫秒 0/4G loop_busy
等待更多工作時睡眠的時間 100 毫秒 0/4G update_batch
1 0/4G read_batch
4 1/4G idle_batch
32 1/4G check_batch
8 1/4G check_delay
檢查新統計資料的頻率 10 分鐘 1/4G delete_batch
8 0/4G clean_delay
1 分鐘 0/4G error_batch
4 1/4G error_delay
1 分鐘 1/4G evict_batch
8 1/4G evict_delay
從讀取時間清除 LRU 快取 1 分鐘 0/4G cache_limit
此 mysqld 用於快取索引統計資料的最大記憶體量(以位元組為單位);當超過此值時,清除快取。 32 M 0/4G cache_lowpct
90 0/100 zero_total
將此項設定為 1 會將 ndb_index_stat_status
中所有累計計數器重設為 0。完成此動作時,此選項值也會重設為 0。0 0/1 -
系統變數 ndb_join_pushdown
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
此變數控制是否將
NDB
資料表上的聯結下推至 NDB 核心(資料節點)。先前,聯結是使用 SQL 節點多次存取NDB
來處理的;但是,當啟用ndb_join_pushdown
時,可下推的聯結會完整地傳送到資料節點,在那裡可以在資料節點之間分發並在資料的多個副本上並行執行,並且將單一合併的結果傳回至 mysqld。這可以大幅減少處理此類聯結所需的 SQL 節點和資料節點之間的往返次數。預設情況下,會啟用
ndb_join_pushdown
。NDB 下推聯結的條件。 為了使聯結可下推,必須符合下列條件
只能比較資料行,且要聯結的所有資料行都必須使用完全相同的資料類型。這表示(例如)
INT
資料行和BIGINT
資料行的聯結也無法下推。也可以下推比較相同資料表資料行的運算式。資料行(或對這些資料行進行任何運算的結果)的類型必須完全相同,包括相同的正負號、長度、字元集和定序、精確度和刻度(如果適用)。
不支援明確鎖定;但是,會強制執行
NDB
儲存引擎的特性隱含以列為基礎的鎖定。這表示無法下推使用
FOR UPDATE
的聯結。為了使聯結可下推,聯結中的子資料表必須使用
ref
、eq_ref
或const
存取方法中的一種或這些方法的組合來存取。只能使用
eq_ref
下推外部聯結的子資料表。如果下推聯結的根是
eq_ref
或const
,則只能附加以eq_ref
聯結的子資料表。(以ref
聯結的資料表很可能成為另一個下推聯結的根。)如果查詢最佳化工具決定為候選子資料表使用
Using join cache
,則該資料表無法以下推方式成為子資料表。但是,它可能是另一組下推資料表的根。目前無法下推參考以
[LINEAR] HASH
、LIST
或RANGE
明確分割的資料表的聯結。
您可以使用
EXPLAIN
來檢查給定的聯結是否可以下推;當聯結可以下推時,您可以在輸出的Extra
欄位中看到對pushed join
的參考,如本範例所示mysql> EXPLAIN -> SELECT e.first_name, e.last_name, t.title, d.dept_name -> FROM employees e -> JOIN dept_emp de ON e.emp_no=de.emp_no -> JOIN departments d ON d.dept_no=de.dept_no -> JOIN titles t ON e.emp_no=t.emp_no\G *************************** 1. row *************************** id: 1 select_type: SIMPLE table: d type: ALL possible_keys: PRIMARY key: NULL key_len: NULL ref: NULL rows: 9 Extra: Parent of 4 pushed join@1 *************************** 2. row *************************** id: 1 select_type: SIMPLE table: de type: ref possible_keys: PRIMARY,emp_no,dept_no key: dept_no key_len: 4 ref: employees.d.dept_no rows: 5305 Extra: Child of 'd' in pushed join@1 *************************** 3. row *************************** id: 1 select_type: SIMPLE table: e type: eq_ref possible_keys: PRIMARY key: PRIMARY key_len: 4 ref: employees.de.emp_no rows: 1 Extra: Child of 'de' in pushed join@1 *************************** 4. row *************************** id: 1 select_type: SIMPLE table: t type: ref possible_keys: PRIMARY,emp_no key: emp_no key_len: 4 ref: employees.de.emp_no rows: 19 Extra: Child of 'e' in pushed join@1 4 rows in set (0.00 sec)
注意如果內部聯結的子資料表透過
ref
聯結,且 結果是依已排序的索引排序或分組,則此索引無法提供已排序的資料列,這會強制寫入已排序的暫存檔。另外有兩種關於下推聯結效能的資訊來源可以使用
狀態變數
Ndb_pushed_queries_defined
、Ndb_pushed_queries_dropped
、Ndb_pushed_queries_executed
和Ndb_pushed_reads
。屬於
DBSPJ
核心區塊的ndbinfo.counters
資料表中的計數器。
-
命令列格式 --ndb-log-apply-status[={OFF|ON}]
系統變數 ndb_log_apply_status
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 布林 預設值 OFF
一個唯讀變數,顯示伺服器是否使用
--ndb-log-apply-status
選項啟動。 -
命令列格式 --ndb-log-bin[={OFF|ON}]
系統變數 ndb_log_bin
範圍 全域、工作階段 動態 否 SET_VAR
提示語適用否 類型 布林 預設值 OFF
導致對
NDB
資料表的更新寫入二進位日誌。如果伺服器上尚未使用log_bin
啟用二進位日誌,則此變數的設定無效。ndb_log_bin
的預設值為 0 (FALSE)。 -
命令列格式 --ndb-log-binlog-index[={OFF|ON}]
系統變數 ndb_log_binlog_index
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
導致將 epoch 對應到二進位日誌中的位置插入到
ndb_binlog_index
資料表中。如果伺服器尚未使用log_bin
啟用二進位日誌,則設定此變數無效。(此外,ndb_log_bin
不得停用。)ndb_log_binlog_index
的預設值為1
(ON
);通常,在生產環境中絕對不需要變更此值。 -
命令列格式 --ndb-log-empty-epochs[={OFF|ON}]
系統變數 ndb_log_empty_epochs
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
當此變數設定為 0 時,沒有變更的 epoch 交易不會寫入二進位日誌,儘管即使對於
ndb_binlog_index
中的空 epoch,仍會寫入資料列。 -
命令列格式 --ndb-log-empty-update[={OFF|ON}]
系統變數 ndb_log_empty_update
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
當此變數設定為
ON
(1
) 時,即使啟用log_replica_updates
,也會將沒有變更的更新交易寫入二進位日誌。 -
命令列格式 --ndb-log-exclusive-reads[={OFF|ON}]
系統變數 ndb_log_exclusive_reads
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 0
此變數決定是否使用獨佔鎖定來記錄主鍵讀取,這允許基於讀取衝突的 NDB Cluster 複寫衝突偵測和解決。若要啟用這些鎖定,請將
ndb_log_exclusive_reads
的值設定為 1。預設值為 0,這會停用此類鎖定。如需詳細資訊,請參閱 讀取衝突偵測和解決方案。
-
命令列格式 --ndb-log-orig[={OFF|ON}]
系統變數 ndb_log_orig
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 布林 預設值 OFF
顯示來源伺服器 ID 和 epoch 是否記錄在
ndb_binlog_index
資料表中。使用--ndb-log-orig
伺服器選項設定。 -
系統變數 ndb_log_transaction_id
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 布林 預設值 OFF
此唯讀布林系統變數顯示複本 mysqld 是否將 NDB 交易 ID 寫入二進位日誌(使用 「active-active」 NDB Cluster 複寫與
NDB$EPOCH_TRANS()
衝突偵測所必需)。若要變更設定,請使用--ndb-log-transaction-id
選項。在主線 MySQL Server 9.0 中不支援
ndb_log_transaction_id
。更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
ndb_log_transaction_compression
命令列格式 --ndb-log-transaction-compression
系統變數 ndb_log_transaction_compression
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
複本 mysqld 是否將壓縮的交易寫入二進位日誌;只有當 mysqld 是在支援
NDB
的情況下編譯時才會出現。您應該注意,使用
--binlog-transaction-compression
啟動 MySQL 伺服器會強制啟用此變數 (ON
),並且這會覆寫在命令列或my.cnf
檔案中設定的任何--ndb-log-transaction-compression
,如此處所示$> mysqld_safe --ndbcluster --ndb-connectstring=127.0.0.1 \ --binlog-transaction-compression=ON --ndb-log-transaction-compression=OFF & [1] 27667 $> 2022-07-07T12:29:20.459937Z mysqld_safe Logging to '/usr/local/mysql/data/myhost.err'. 2022-07-07T12:29:20.509873Z mysqld_safe Starting mysqld daemon with databases from /usr/local/mysql/data $> mysql -e 'SHOW VARIABLES LIKE "%transaction_compression%"' +--------------------------------------------+-------+ | Variable_name | Value | +--------------------------------------------+-------+ | binlog_transaction_compression | ON | | binlog_transaction_compression_level_zstd | 3 | | ndb_log_transaction_compression | ON | | ndb_log_transaction_compression_level_zstd | 3 | +--------------------------------------------+-------+
若要僅針對
NDB
資料表停用二進位日誌交易壓縮,請在啟動 mysqld 後,於 mysql 或其他用戶端工作階段中,將ndb_log_transaction_compression
系統變數設定為OFF
。啟動後設定
binlog_transaction_compression
變數對ndb_log_transaction_compression
的值沒有影響。如需二進位日誌交易壓縮的詳細資訊,例如哪些事件會或不會壓縮,以及使用此功能時應注意的行為變更,請參閱 第 7.4.4.5 節「二進位日誌交易壓縮」。
ndb_log_transaction_compression_level_zstd
命令列格式 --ndb-log-transaction-compression-level-zstd=#
系統變數 ndb_log_transaction_compression_level_zstd
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 3
最小值 1
最大值 22
如果透過
ndb_log_transaction_compression
啟用,則用於將壓縮的交易寫入複本的二進位日誌的ZSTD
壓縮層級。如果 mysqld 未在支援NDB
儲存引擎的情況下編譯,則不支援。如需更多資訊,請參閱第 7.4.4.5 節「二進位日誌交易壓縮」。
-
命令列格式 --ndb-metadata-check[={OFF|ON}]
系統變數 ndb_metadata_check
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
NDB
使用背景執行緒,將與 MySQL 資料字典比較的每個ndb_metadata_check_interval
秒檢查中繼資料變更。可以透過將ndb_metadata_check
設定為OFF
來停用此中繼資料變更偵測執行緒。預設會啟用執行緒。 -
命令列格式 --ndb-metadata-check-interval=#
系統變數 ndb_metadata_check_interval
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 60
最小值 0
最大值 31536000
單位 秒 NDB
在背景中執行中繼資料變更偵測執行緒,以判斷 NDB 字典相對於 MySQL 資料字典的變更時間。依預設,此類檢查之間的間隔為 60 秒;可以透過設定ndb_metadata_check_interval
的值來調整此間隔。若要啟用或停用執行緒,請使用ndb_metadata_check
。 -
系統變數 ndb_metadata_sync
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 false
設定此變數會導致變更監視器執行緒覆寫為
ndb_metadata_check
或ndb_metadata_check_interval
設定的任何值,並進入連續變更偵測的週期。當執行緒確定沒有更多變更需要偵測時,它會暫停,直到二進位日誌執行緒完成所有偵測到的物件的同步。然後將ndb_metadata_sync
設定為false
,而變更監視器執行緒會還原為ndb_metadata_check
和ndb_metadata_check_interval
的設定所決定的行為。將此變數設定為
true
會導致清除排除的物件清單;將其設定為false
會清除要重試的物件清單。 -
命令列格式 --ndb-optimized-node-selection=#
系統變數 ndb_optimized_node_selection
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 整數 預設值 3
最小值 0
最大值 3
此處說明了兩種形式的最佳化節點選取
SQL 節點使用接近度來判斷交易協調器;也就是說,選擇「最接近」SQL 節點的資料節點作為交易協調器。為此,具有與 SQL 節點共用記憶體連線的資料節點被視為「最接近」SQL 節點;接近度第二的(依接近度遞減的順序)是:連線到
localhost
的 TCP 連線,其次是來自localhost
以外主機的 TCP 連線。SQL 執行緒使用分佈感知來選取資料節點。也就是說,將由給定交易的第一個陳述式存取的叢集分割區所包含的資料節點用作整個交易的交易協調器。(僅當交易的第一個陳述式存取不超過一個叢集分割區時,此方法才有效。)
此選項採用整數值
0
、1
、2
或3
之一。3
是預設值。這些值會以下列方式影響節點選取0
:未最佳化節點選取。每個資料節點在 SQL 執行緒繼續到下一個資料節點之前,會被用作交易協調器 8 次。1
:與 SQL 節點的鄰近程度用於決定事務協調器。2
:分佈感知用於選擇事務協調器。但是,如果事務的第一個語句存取多個叢集分割區,則 SQL 節點會回復為當此選項設定為0
時所見的循環配置行為。3
:如果可以使用分佈感知來決定事務協調器,則會使用它;否則,會使用鄰近程度來選擇事務協調器。(這是預設行為。)
鄰近程度的決定方式如下
從
Group
參數(預設值為 55)設定的值開始。對於與其他 API 節點共用相同主機的 API 節點,將值減 1。假設
Group
的預設值,則與 API 節點位於同一主機上的資料節點的有效值為 54,而遠端資料節點的有效值為 55。設定
ndb_data_node_neighbour
會進一步將有效的Group
值減少 50,導致此節點被視為最近的節點。只有當所有資料節點都位於與 API 節點不同的主機上,且希望將其中一個節點專用於 API 節點時,才需要這樣做。在正常情況下,先前描述的預設調整已足夠。
不建議頻繁變更
ndb_data_node_neighbour
,因為這會變更叢集連線的狀態,因此可能會擾亂每個執行緒新事務的選擇演算法,直到其穩定下來。 -
命令列格式 --ndb-read-backup[={OFF|ON}]
系統變數 ndb_read_backup
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
啟用從後續建立的任何
NDB
表格的任何片段副本讀取;這樣做可以大幅改善表格讀取效能,而寫入的成本相對較小。如果 SQL 節點和資料節點使用相同的主機名稱或 IP 位址,系統會自動偵測到此事實,因此偏好將讀取傳送到相同的主機。如果這些節點位於相同的主機上,但使用不同的 IP 位址,您可以透過在 SQL 節點上將
ndb_data_node_neighbour
的值設定為資料節點的節點 ID,來告知 SQL 節點使用正確的資料節點。若要為個別表格啟用或停用從任何片段副本讀取,您可以在
CREATE TABLE
或ALTER TABLE
陳述式中,為表格設定NDB_TABLE
選項READ_BACKUP
;如需詳細資訊,請參閱 章節 15.1.20.12,「設定 NDB 註解選項」。 ndb_recv_thread_activation_threshold
命令列格式 --ndb-recv-thread-activation-threshold=#
系統變數 ndb_recv_thread_activation_threshold
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 8
最小值 0 (MIN_ACTIVATION_THRESHOLD)
最大值 16 (MAX_ACTIVATION_THRESHOLD)
當達到此數量的並行活動執行緒時,接收執行緒會接管叢集連線的輪詢。
此變數的範圍是全域的。它也可以在啟動時設定。
-
命令列格式 --ndb-recv-thread-cpu-mask=mask
系統變數 ndb_recv_thread_cpu_mask
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 位元遮罩 預設值 [空]
將接收器執行緒鎖定到特定 CPU 的 CPU 遮罩。這指定為十六進位位元遮罩。例如,
0x33
表示每個接收器執行緒使用一個 CPU。空字串是預設值;將ndb_recv_thread_cpu_mask
設定為此值會移除先前設定的任何接收器執行緒鎖定。此變數的範圍是全域的。它也可以在啟動時設定。
ndb_report_thresh_binlog_epoch_slip
命令列格式 --ndb-report-thresh-binlog-epoch-slip=#
系統變數 ndb_report_thresh_binlog_epoch_slip
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 10
最小值 0
最大值 256
這表示事件緩衝區中完全緩衝但尚未被二進位記錄注入器執行緒使用的 epoch 數量的臨界值。當超過此程度的滑動 (延遲) 時,會報告事件緩衝區狀態訊息,並提供
BUFFERED_EPOCHS_OVER_THRESHOLD
作為原因(請參閱章節 25.6.2.3,「叢集日誌中的事件緩衝區報告」)。當從資料節點接收 epoch 並在事件緩衝區中完全緩衝時,滑動會增加;當二進位記錄注入器執行緒使用 epoch 時,滑動會減少。空 epoch 會緩衝和排隊,因此只有在使用來自 NDB API 的Ndb::setEventBufferQueueEmptyEpoch()
方法啟用時,才會包含在此計算中。ndb_report_thresh_binlog_mem_usage
命令列格式 --ndb-report-thresh-binlog-mem-usage=#
系統變數 ndb_report_thresh_binlog_mem_usage
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 10
最小值 0
最大值 10
這是回報二進位記錄狀態前,剩餘可用記憶體百分比的臨界值。例如,值
10
(預設值) 表示如果從資料節點接收二進位記錄資料的可用記憶體量降至 10% 以下,則會將狀態訊息傳送到叢集日誌。-
系統變數 ndb_row_checksum
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 1
最小值 0
最大值 1
傳統上,
NDB
會建立具有列總和檢查碼的表格,這會在效能方面付出代價來檢查硬體問題。將ndb_row_checksum
設定為 0 表示新表格或變更的表格 不 會使用列總和檢查碼,這對所有類型的查詢的效能都有顯著影響。此變數預設設定為 1,以提供向後相容的行為。 ndb_schema_dist_lock_wait_timeout
命令列格式 --ndb-schema-dist-lock-wait-timeout=value
系統變數 ndb_schema_dist_lock_wait_timeout
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 30
最小值 0
最大值 1200
單位 秒 在綱要分發期間等待數秒,以取得每個 SQL 節點上取得的中繼資料鎖定,以便變更其本機資料字典以反映 DDL 陳述式變更。經過此時間後,會傳回警告,指出指定 SQL 節點的資料字典未更新該變更。這可避免二進位記錄執行緒在處理綱要作業時等待過長的時間。
-
命令列格式 --ndb-schema-dist-timeout=value
系統變數 ndb_schema_dist_timeout
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 整數 預設值 120
最小值 5
最大值 1200
單位 秒 在綱要分發期間等待數秒,然後偵測逾時。這可能表示其他 SQL 節點正經歷過多的活動,或者它們以某種方式被阻止在此時取得必要的資源。
ndb_schema_dist_upgrade_allowed
命令列格式 --ndb-schema-dist-upgrade-allowed=value
系統變數 ndb_schema_dist_upgrade_allowed
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 布林 預設值 true
允許在連線到
NDB
時升級綱要分發表格。當為 true (預設值) 時,此變更會延遲到所有 SQL 節點都升級到相同版本的 NDB 叢集軟體為止。注意在執行升級之前,綱要分發的效能可能會略為降低。
ndb_show_foreign_key_mock_tables
命令列格式 --ndb-show-foreign-key-mock-tables[={OFF|ON}]
系統變數 ndb_show_foreign_key_mock_tables
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
顯示
NDB
用於支援foreign_key_checks=0
的模擬表格。當啟用此功能時,在建立和捨棄表格時會顯示額外的警告。表格的真實 (內部) 名稱可以在SHOW CREATE TABLE
的輸出中看到。-
命令列格式 --ndb-slave-conflict-role=value
已過時 是 系統變數 ndb_slave_conflict_role
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 列舉 預設值 NONE
有效值 NONE
PRIMARY
SECONDARY
PASS
ndb_conflict_role
的已過時同義詞。 -
系統變數 ndb_table_no_logging
範圍 工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
當此變數設定為
ON
或1
時,它會導致使用ENGINE NDB
建立或變更的所有表格都為非記錄;也就是說,此表格的任何資料變更都不會寫入重做記錄或檢查點到磁碟,就像使用CREATE TABLE
或ALTER TABLE
的NOLOGGING
選項建立或變更表格一樣。如需有關非記錄
NDB
表格的詳細資訊,請參閱NDB_TABLE 選項。ndb_table_no_logging
對於建立NDB
表格綱要檔案沒有影響;若要隱藏這些檔案,請改用ndb_table_temporary
。 -
系統變數 ndb_table_temporary
範圍 工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
當設定為
ON
或1
時,此變數會導致NDB
資料表不寫入磁碟:這表示不會建立任何資料表綱要檔案,並且不會記錄資料表。注意目前設定此變數無效。這是一個已知問題;請參閱 Bug #34036。
-
系統變數 ndb_use_copying_alter_table
範圍 全域、工作階段 動態 否 SET_VAR
提示語適用否 當線上
ALTER TABLE
操作發生問題時,強制NDB
使用複製資料表的方式。預設值為OFF
。 -
系統變數 ndb_use_exact_count
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
強制
NDB
在SELECT COUNT(*)
查詢規劃期間使用記錄計數,以加快此類查詢的速度。預設值為OFF
,這樣可以整體加快查詢速度。 -
命令列格式 --ndb-use-transactions[={OFF|ON}]
系統變數 ndb_use_transactions
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
您可以將此變數的值設定為
OFF
來停用NDB
交易支援。一般不建議這樣做,但當某個用戶端工作階段用於匯入一個或多個包含大型交易的傾印檔案時,停用該工作階段內的交易支援可能會有用;這樣就可以分段執行多行插入,而不是單一交易。在這種情況下,匯入完成後,您應該將此工作階段的變數值重設為ON
,或直接終止工作階段。 -
系統變數 ndb_version
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 字串 預設值 NDB
引擎版本,以複合整數表示。 -
系統變數 ndb_version_string
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 字串 預設值 格式為
ndb-
的x.y.z
NDB
引擎版本。 -
命令列格式 --replica-allow-batching[={OFF|ON}]
系統變數 replica_allow_batching
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
是否在 NDB Cluster 複本上啟用批次更新。
允許複本上的批次更新可以大幅提高效能,尤其是在複製
TEXT
、BLOB
和JSON
欄位時。因此,預設會啟用replica_allow_batching
。只有在使用
NDB
儲存引擎進行複寫時,設定此變數才會生效;在 MySQL Server 9.0 中,它會存在但不會執行任何動作。如需更多資訊,請參閱 Section 25.7.6, “Starting NDB Cluster Replication (Single Replication Channel)”。 -
命令列格式 --ndb-replica-batch-size=#
系統變數 ndb_replica_batch_size
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 2097152
最小值 0
最大值 2147483648
單位 位元組 決定複寫應用程式執行緒使用的批次大小(以位元組為單位)。設定此變數,而不是
--ndb-batch-size
選項,以將此設定套用至複本,排除任何其他工作階段。如果未設定此變數 (預設值為 2 MB),則其有效值會是
--ndb-batch-size
和 2 MB 中的較大值。 ndb_replica_blob_write_batch_bytes
命令列格式 --ndb-replica-blob-write-batch-bytes=#
系統變數 ndb_replica_blob_write_batch_bytes
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 2097152
最小值 0
最大值 2147483648
單位 位元組 控制複寫應用程式執行緒用於 blob 資料的批次寫入大小。
使用此變數,而不是
--ndb-blob-write-batch-bytes
選項來控制複本上的 blob 批次寫入大小,排除任何其他工作階段。原因在於,當未設定ndb_replica_blob_write_batch_bytes
時,有效的 blob 批次大小 (也就是,blob 欄位要寫入的暫止位元組最大數量) 是由--ndb-blob-write-batch-bytes
和 2 MB 中的較大值決定 (ndb_replica_blob_write_batch_bytes
的預設值)。將
ndb_replica_blob_write_batch_bytes
設定為 0 表示NDB
不會限制複本上 blob 批次寫入的大小。-
命令列格式 --server-id-bits=#
系統變數 server_id_bits
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 整數 預設值 32
最小值 7
最大值 32
此變數表示 32 位元
server_id
中,實際識別伺服器的最低有效位元數。指出伺服器實際上由少於 32 個位元識別,可以讓其餘位元用於其他目的,例如儲存使用 NDB API 的 Event API 的應用程式所產生的使用者資料,在OperationOptions
結構的AnyValue
中 (NDB Cluster 使用AnyValue
來儲存伺服器 ID)。當從
server_id
中擷取有效伺服器 ID 以用於偵測複寫迴圈等目的時,伺服器會忽略其餘位元。當決定是否應根據伺服器 ID 忽略事件時,I/O 和 SQL 執行緒會使用server_id_bits
變數來遮罩掉server_id
的任何不相關位元。如果
server_id_bits
變數設定為 32 (預設值),則可以使用 mysqlbinlog 從二進位日誌中讀取此資料。如果
server_id
的值大於或等於 2 的server_id_bits
次方,則 mysqld 會拒絕啟動。此系統變數僅受 NDB Cluster 支援。標準 MySQL 9.0 Server 不支援此變數。
-
命令列格式 --slave-allow-batching[={OFF|ON}]
已過時 是 系統變數 slave_allow_batching
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 ON
replica_allow_batching
的已過時同義詞。 -
系統變數 transaction_allow_batching
範圍 工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
當設定為
1
或ON
時,此變數會啟用同一交易中陳述式的批次處理。若要使用此變數,必須先停用autocommit
,方法是將其設定為0
或OFF
;否則,設定transaction_allow_batching
無效。使用僅執行寫入的交易時,此變數是安全的,因為啟用此變數可能會從「之前」的映像檔讀取。您應確保在發出
SELECT
之前,所有暫止的交易都已認可 (如果需要,可以使用明確的COMMIT
)。重要事項當給定陳述式的效果可能會取決於相同交易中先前陳述式的結果時,不應使用
transaction_allow_batching
。此變數目前僅支援 NDB Cluster。
以下清單中的系統變數全都與 ndbinfo
資訊資料庫有關。
-
系統變數 ndbinfo_database
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 字串 預設值 ndbinfo
顯示用於
NDB
資訊資料庫的名稱;預設值為ndbinfo
。這是一個唯讀變數,其值在編譯時決定。 -
命令列格式 --ndbinfo-max-bytes=#
系統變數 ndbinfo_max_bytes
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 0
最小值 0
最大值 65535
僅用於測試和偵錯。
-
命令列格式 --ndbinfo-max-rows=#
系統變數 ndbinfo_max_rows
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 整數 預設值 10
最小值 1
最大值 256
僅用於測試和偵錯。
-
系統變數 ndbinfo_offline
範圍 全域 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
將
ndbinfo
資料庫置於離線模式,在此模式下,即使資料表和檢視實際上不存在,或存在但NDB
中的定義不同時,也可以開啟它們。不會從這類資料表 (或檢視) 傳回任何資料列。 -
命令列格式 --ndbinfo-show-hidden[={OFF|ON}]
系統變數 ndbinfo_show_hidden
範圍 全域、工作階段 動態 是 SET_VAR
提示語適用否 類型 布林 預設值 OFF
有效值 ON
OFF
是否在 mysql 用戶端中顯示
ndbinfo
資料庫的基礎內部資料表。預設值為OFF
。注意啟用
ndbinfo_show_hidden
時,內部資料表只會顯示在ndbinfo
資料庫中;無論變數的設定為何,它們都不會顯示在TABLES
或其他INFORMATION_SCHEMA
資料表中。 -
系統變數 ndbinfo_table_prefix
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 字串 預設值 ndb$
用於命名 ndbinfo 資料庫的基底資料表的前置詞 (通常會隱藏,除非透過設定
ndbinfo_show_hidden
來公開)。這是一個唯讀變數,其預設值為ndb$
;前置詞本身是在編譯時決定。 -
系統變數 ndbinfo_version
範圍 全域 動態 否 SET_VAR
提示語適用否 類型 字串 預設值 顯示使用的
ndbinfo
引擎版本;唯讀。
本節提供關於 MySQL 伺服器與 NDB Cluster 和 NDB
儲存引擎相關的狀態變數的詳細資訊。關於非 NDB Cluster 特有的狀態變數,以及關於使用狀態變數的一般資訊,請參閱 第 7.1.10 節「伺服器狀態變數」。
MySQL 伺服器可以詢問
NDBCLUSTER
儲存引擎是否知道具有給定名稱的資料表。這被稱為探索。Handler_discover
指示使用此機制探索資料表的次數。Ndb_api_adaptive_send_deferred_count
實際未傳送的自適應傳送呼叫次數。
如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_adaptive_send_deferred_count_session
實際未傳送的自適應傳送呼叫次數。
如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_adaptive_send_deferred_count_replica
此複本實際未傳送的自適應傳送呼叫次數。
如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_adaptive_send_deferred_count_slave
Ndb_api_adaptive_send_forced_count
此 MySQL 伺服器(SQL 節點)使用強制傳送所傳送的自適應傳送呼叫次數。
如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_adaptive_send_forced_count_session
在此用戶端會期中,使用強制傳送所傳送的自適應傳送呼叫次數。
如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_adaptive_send_forced_count_replica
此複本使用強制傳送所傳送的自適應傳送呼叫次數。
如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_adaptive_send_forced_count_slave
Ndb_api_adaptive_send_unforced_count
此 MySQL 伺服器(SQL 節點)未經強制傳送所傳送的自適應傳送呼叫次數。
如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_adaptive_send_unforced_count_session
在此用戶端會期中,未經強制傳送所傳送的自適應傳送呼叫次數。
如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_adaptive_send_unforced_count_replica
此複本未經強制傳送所傳送的自適應傳送呼叫次數。
如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_adaptive_send_unforced_count_slave
Ndb_api_bytes_sent_count_session
在此用戶端會期中,傳送到資料節點的資料量(以位元組為單位)。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_bytes_sent_count_replica
此複本傳送到資料節點的資料量(以位元組為單位)。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_bytes_sent_count_slave
Ndb_api_bytes_sent_count_replica
的已棄用同義詞。此 MySQL 伺服器(SQL 節點)傳送到資料節點的資料量(以位元組為單位)。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_bytes_received_count_session
在此用戶端會期中,從資料節點接收的資料量(以位元組為單位)。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_bytes_received_count_replica
此複本從資料節點接收的資料量(以位元組為單位)。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_bytes_received_count_slave
Ndb_api_bytes_received_count_replica
的已棄用同義詞。此 MySQL 伺服器(SQL 節點)從資料節點接收的資料量(以位元組為單位)。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_event_data_count_injector
NDB 二進位日誌注入器執行緒接收的資料列變更事件數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
此 MySQL 伺服器(SQL 節點)接收的資料列變更事件數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_event_nondata_count_injector
NDB 二進位日誌注入器執行緒接收的事件數(資料列變更事件除外)。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
此 MySQL 伺服器(SQL 節點)接收的事件數(資料列變更事件除外)。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_event_bytes_count_injector
NDB 二進位日誌注入器執行緒接收的事件位元組數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
此 MySQL 伺服器(SQL 節點)接收的事件位元組數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
在此用戶端會期中,基於或使用主索引鍵的操作次數。這包括對 Blob 資料表的操作、隱式解除鎖定操作和自動遞增操作,以及使用者可見的主索引鍵操作。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
此複本基於或使用主索引鍵的操作次數。這包括對 Blob 資料表的操作、隱式解除鎖定操作和自動遞增操作,以及使用者可見的主索引鍵操作。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_pk_op_count_replica
的已棄用同義詞。此 MySQL 伺服器(SQL 節點)基於或使用主索引鍵的操作次數。這包括對 Blob 資料表的操作、隱式解除鎖定操作和自動遞增操作,以及使用者可見的主索引鍵操作。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_pruned_scan_count_session
在此用戶端會期中,已修剪為單一分割區的掃描次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_pruned_scan_count_replica
此複本已修剪為單一分割區的掃描次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_pruned_scan_count_slave
Ndb_api_pruned_scan_count_replica
的已棄用同義詞。此 MySQL 伺服器(SQL 節點)已修剪為單一分割區的掃描次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_range_scan_count_session
在此用戶端會期中已啟動的範圍掃描次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_range_scan_count_replica
此複本已啟動的範圍掃描次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_range_scan_count_slave
Ndb_api_range_scan_count_replica
的已棄用同義詞。此 MySQL 伺服器 (SQL 節點) 已啟動的範圍掃描次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_read_row_count_session
在此用戶端連線中已讀取的總行數。這包括在此用戶端連線中,所有透過主鍵、唯一鍵或掃描操作讀取的行。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_read_row_count_replica
此複本已讀取的總行數。這包括此複本中,所有透過主鍵、唯一鍵或掃描操作讀取的行。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
已棄用的
Ndb_api_read_row_count_replica
同義詞。此 MySQL 伺服器 (SQL 節點) 已讀取的總行數。這包括此 MySQL 伺服器 (SQL 節點) 中,所有透過主鍵、唯一鍵或掃描操作讀取的行。
您應注意,由於在這種情況下,MySQL 伺服器實際上是以
[
的形式讀取虛擬行,並對資料表中所有片段的每片段行數進行加總,以導出所有行的估計計數,因此此值可能與資料表片段 ID
]:[片段中的行數
]SELECT
COUNT(*)
查詢讀取的行數不完全準確。Ndb_api_read_row_count
使用此估計值,而不是資料表中的實際行數。雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_scan_batch_count_session
在此用戶端連線中接收到的行批次數。1 個批次定義為來自單一片段的 1 組掃描結果。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_scan_batch_count_replica
此複本接收到的行批次數。1 個批次定義為來自單一片段的 1 組掃描結果。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_scan_batch_count_slave
已棄用的
Ndb_api_scan_batch_count_replica
同義詞。此 MySQL 伺服器 (SQL 節點) 接收到的行批次數。1 個批次定義為來自單一片段的 1 組掃描結果。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_table_scan_count_session
在此用戶端連線中已啟動的資料表掃描次數,包括內部資料表的掃描。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_table_scan_count_replica
此複本已啟動的資料表掃描次數,包括內部資料表的掃描。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_table_scan_count_slave
已棄用的
Ndb_api_table_scan_count_replica
同義詞。此 MySQL 伺服器 (SQL 節點) 已啟動的資料表掃描次數,包括內部資料表的掃描。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_abort_count_session
在此用戶端連線中已中止的事務次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_abort_count_replica
此複本已中止的事務次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_abort_count_slave
已棄用的
Ndb_api_trans_abort_count_replica
同義詞。此 MySQL 伺服器 (SQL 節點) 已中止的事務次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_close_count_session
在此用戶端連線中已關閉的事務次數。此值可能會大於
Ndb_api_trans_commit_count_session
和Ndb_api_trans_abort_count_session
的總和,因為某些事務可能已回滾。雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_close_count_replica
此複本已關閉的事務次數。此值可能會大於
Ndb_api_trans_commit_count_replica
和Ndb_api_trans_abort_count_replica
的總和,因為某些事務可能已回滾。雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_close_count_slave
已棄用的
Ndb_api_trans_close_count_replica
同義詞。此 MySQL 伺服器 (SQL 節點) 已關閉的事務次數。此值可能會大於
Ndb_api_trans_commit_count
和Ndb_api_trans_abort_count
的總和,因為某些事務可能已回滾。雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_commit_count_session
在此用戶端連線中已提交的事務次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_commit_count_replica
此複本已提交的事務次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_commit_count_slave
已棄用的
Ndb_api_trans_commit_count_replica
同義詞。此 MySQL 伺服器 (SQL 節點) 已提交的事務次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_local_read_row_count_session
在此用戶端連線中已讀取的總行數。這包括在此用戶端連線中,所有透過主鍵、唯一鍵或掃描操作讀取的行。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_local_read_row_count_replica
此複本已讀取的總行數。這包括此複本中,所有透過主鍵、唯一鍵或掃描操作讀取的行。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_local_read_row_count_slave
Ndb_api_trans_local_read_row_count
此 MySQL 伺服器 (SQL 節點) 已讀取的總行數。這包括此 MySQL 伺服器 (SQL 節點) 中,所有透過主鍵、唯一鍵或掃描操作讀取的行。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_start_count_session
在此用戶端連線中已啟動的事務次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_start_count_replica
此複本已啟動的事務次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_trans_start_count_slave
已棄用的
Ndb_api_trans_start_count_replica
同義詞。此 MySQL 伺服器 (SQL 節點) 已啟動的事務次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
在此用戶端連線中,基於或使用唯一鍵的操作次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
此複本基於或使用唯一鍵的操作次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
已棄用的
Ndb_api_uk_op_count_replica
同義詞。此 MySQL 伺服器 (SQL 節點) 基於或使用唯一鍵的操作次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_exec_complete_count_session
在此用戶端連線中,線程在等待操作執行完成時被封鎖的次數。這包括所有
execute()
呼叫,以及對客戶端不可見的 blob 和自動遞增操作的隱式執行。雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_exec_complete_count_replica
此複本在等待操作執行完成時,線程被封鎖的次數。這包括所有
execute()
呼叫,以及對客戶端不可見的 blob 和自動遞增操作的隱式執行。雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_exec_complete_count_slave
已棄用的
Ndb_api_wait_exec_complete_count_replica
同義詞。Ndb_api_wait_exec_complete_count
此 MySQL 伺服器 (SQL 節點) 的執行緒在等待操作完成執行時被封鎖的次數。這包括所有
execute()
呼叫,以及對用戶端不可見的 blob 和自動遞增操作的隱式執行。雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_meta_request_count_session
此用戶端工作階段中的執行緒在等待基於中繼資料的訊號 (例如 DDL 請求、新的 epoch 以及交易記錄的取得) 時被封鎖的次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_meta_request_count_replica
此副本的執行緒在等待基於中繼資料的訊號 (例如 DDL 請求、新的 epoch 以及交易記錄的取得) 時被封鎖的次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_meta_request_count_slave
已棄用的
Ndb_api_wait_meta_request_count_replica
同義詞。Ndb_api_wait_meta_request_count
此 MySQL 伺服器 (SQL 節點) 的執行緒在等待基於中繼資料的訊號 (例如 DDL 請求、新的 epoch 以及交易記錄的取得) 時被封鎖的次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_nanos_count_session
在此用戶端工作階段中,等待來自資料節點的任何類型訊號所花費的總時間 (奈秒)。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_nanos_count_replica
此副本等待來自資料節點的任何類型訊號所花費的總時間 (奈秒)。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_nanos_count_slave
已棄用的
Ndb_api_wait_nanos_count_replica
同義詞。此 MySQL 伺服器 (SQL 節點) 等待來自資料節點的任何類型訊號所花費的總時間 (奈秒)。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_scan_result_count_session
此用戶端工作階段中的執行緒在等待基於掃描的訊號時 (例如等待掃描的更多結果,或等待掃描關閉時) 被封鎖的次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它僅與目前會期相關,且不受此 mysqld 的任何其他用戶端影響。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_scan_result_count_replica
此副本的執行緒在等待基於掃描的訊號時 (例如等待掃描的更多結果,或等待掃描關閉時) 被封鎖的次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如果此 MySQL 伺服器不作為複本運作,或不使用 NDB 資料表,則此值永遠為 0。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
Ndb_api_wait_scan_result_count_slave
已棄用的
Ndb_api_wait_scan_result_count_replica
同義詞。Ndb_api_wait_scan_result_count
此 MySQL 伺服器 (SQL 節點) 的執行緒在等待基於掃描的訊號時 (例如等待掃描的更多結果,或等待掃描關閉時) 被封鎖的次數。
雖然可以使用
SHOW GLOBAL STATUS
或SHOW SESSION STATUS
讀取此變數,但它實際上是全域範圍。如需更多資訊,請參閱 第 25.6.16 節「NDB API 統計計數器與變數」。
如果伺服器作為 NDB Cluster 節點運作,則此變數的值是其在叢集中的節點 ID。
如果伺服器不是 NDB Cluster 的一部分,則此變數的值為 0。
如果伺服器是 NDB Cluster 的一部分,此變數的值是叢集管理伺服器的主機名稱或 IP 位址,該伺服器會從中取得其組態資料。
如果伺服器不是 NDB Cluster 的一部分,則此變數的值為空字串。
如果伺服器是 NDB Cluster 的一部分,此變數的值是其連線至叢集管理伺服器的連接埠號碼,該伺服器會從中取得其組態資料。
如果伺服器不是 NDB Cluster 的一部分,則此變數的值為 0。
顯示叢集目前組態的產生編號。這可用作指示器,判斷自此 SQL 節點上次連線到叢集以來,叢集的組態是否已變更。
此變數用於 NDB Cluster 複寫衝突解決,顯示自上次重新啟動以來,在給定的 mysqld 上使用
NDB$EPOCH()
衝突解決方式發現衝突的列數。更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
此變數用於 NDB Cluster 複寫衝突解決,顯示自上次重新啟動以來,在給定的 mysqld 上使用
NDB$EPOCH_TRANS()
衝突解決方式發現衝突的列數。更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
顯示自上次重新啟動以來,在指定為主要來源時,使用
NDB$EPOCH2()
時在 NDB Cluster 複寫衝突解決中發現衝突的列數。如需更多資訊,請參閱NDB$EPOCH2()。
此變數用於 NDB Cluster 複寫衝突解決,顯示自上次重新啟動以來,在給定的 mysqld 上使用
NDB$EPOCH_TRANS2()
衝突解決方式發現衝突的列數。如需更多資訊,請參閱NDB$EPOCH2_TRANS()。
此變數用於 NDB Cluster 複寫衝突解決,顯示由於 「最大時間戳記優先」 衝突解決方式,自上次啟動此 mysqld 以來,目前 SQL 節點上未套用列的次數。
更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
顯示自上次啟動此 mysqld 以來,由於使用
NDB$MAX_DELETE_WIN()
的 NDB Cluster 複寫衝突解決方式,目前 SQL 節點上拒絕列的次數。更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
Ndb_conflict_fn_max_del_win_ins
顯示自上次啟動此 mysqld 以來,由於使用
NDB$MAX_DEL_WIN_INS()
的 NDB Cluster 複寫衝突解決方式,目前 SQL 節點上拒絕插入列的次數。更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
此變數用於 NDB Cluster 複寫衝突解決,顯示由於 「最大時間戳記優先」 衝突解決方式,自上次啟動此 mysqld 以來,目前 SQL 節點上未插入列的次數。
更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
此變數用於 NDB Cluster 複寫衝突解決,顯示由於 「相同時間戳記優先」 衝突解決方式,自上次重新啟動以來,在給定的 mysqld 上未套用列的次數。
更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
Ndb_conflict_last_conflict_epoch
此副本上偵測到衝突的最近 epoch。您可以將此值與
Ndb_replica_max_replicated_epoch
比較;如果Ndb_replica_max_replicated_epoch
大於Ndb_conflict_last_conflict_epoch
,則尚未偵測到任何衝突。如需更多資訊,請參閱第 25.7.12 節「NDB Cluster 複寫衝突解決」。
Ndb_conflict_reflected_op_discard_count
使用 NDB Cluster 複寫衝突解決時,這是由於執行期間遇到錯誤而未在次要節點上套用的反映作業數。
如需更多資訊,請參閱第 25.7.12 節「NDB Cluster 複寫衝突解決」。
Ndb_conflict_reflected_op_prepare_count
使用 NDB Cluster 複寫的衝突解決時,此狀態變數包含已定義 (亦即,準備在次要節點上執行) 的反映作業數。
使用 NDB Cluster 複寫的衝突解決時,這會提供準備在次要節點上執行的重新整理作業數。
如需更多資訊,請參閱第 25.7.12 節「NDB Cluster 複寫衝突解決」。
Ndb_conflict_last_stable_epoch
交易衝突函式發現的衝突列數
如需更多資訊,請參閱第 25.7.12 節「NDB Cluster 複寫衝突解決」。
Ndb_conflict_trans_row_conflict_count
此狀態變數用於 NDB Cluster 複寫衝突解決,顯示自上次重新啟動以來,給定的 mysqld 上,事務性衝突函數發現直接衝突的列數。
目前,NDB Cluster 支援的唯一事務性衝突檢測函數是 NDB$EPOCH_TRANS(),因此此狀態變數實際上與
Ndb_conflict_fn_epoch_trans
相同。更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
Ndb_conflict_trans_row_reject_count
此狀態變數用於 NDB Cluster 複寫衝突解決,顯示因事務性衝突檢測函數判定為衝突而重新對齊的總列數。這不僅包含
Ndb_conflict_trans_row_conflict_count
,還包含衝突事務中的任何列或依賴於衝突事務的列。更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
Ndb_conflict_trans_reject_count
此狀態變數用於 NDB Cluster 複寫衝突解決,顯示事務性衝突檢測函數發現衝突的事務數量。
更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
Ndb_conflict_trans_detect_iter_count
此變數用於 NDB Cluster 複寫衝突解決,顯示提交 epoch 事務所需的內部迭代次數。應(略微)大於或等於
Ndb_conflict_trans_conflict_commit_count
。更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
Ndb_conflict_trans_conflict_commit_count
此變數用於 NDB Cluster 複寫衝突解決,顯示在需要進行事務性衝突處理後提交的 epoch 事務數量。
更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
當使用刪除-刪除衝突檢測時,這是檢測到的刪除-刪除衝突的數量,其中套用了刪除操作,但指示的列不存在。
提供操作對
NDB
核心進行往返的次數。NDB
最近提交的 epoch。此
NDB
客戶端最近提交的 epoch。自上次啟動此伺服器以來,NDB 元資料變更偵測執行緒發現與 MySQL 資料字典相關變更的次數。
自上次重新啟動以來,NDB 二進制日誌執行緒無法在此 SQL 節點上同步的元資料物件數量。
如果物件被排除,在使用者手動更正不符之前,不會再次考慮自動同步。這可以透過嘗試使用諸如
SHOW CREATE TABLE
、table
SELECT * FROM
或任何其他會觸發表格探索的陳述式來完成。table
自上次重新啟動以來,在此 SQL 節點上已同步的 NDB 元資料物件數量。
如果伺服器是 NDB Cluster 的一部分,則此變數的值是叢集中資料節點的數量。
如果伺服器不是 NDB Cluster 的一部分,則此變數的值為 0。
向下推送至 NDB 核心以在資料節點上進行分散式處理的聯結總數。
注意使用
EXPLAIN
測試的可向下推送的聯結會計入此數字。向下推送至 NDB 核心但無法在那裡處理的聯結數量。
成功向下推送至
NDB
並在那裡執行的聯結數量。從向下推送的聯結,由 NDB 核心返回給 mysqld 的列數。
此變數保存自上次啟動 NDB Cluster 以來,
NDBCLUSTER
執行掃描的次數計數,其中NDBCLUSTER
能夠使用分割區修剪。將此變數與
Ndb_scan_count
一起使用,有助於架構設計,以最大化伺服器將掃描修剪到單個表格分割區的能力,從而只涉及單個資料節點的複本。Ndb_replica_max_replicated_epoch
此複本上最近提交的 epoch。您可以將此值與
Ndb_conflict_last_conflict_epoch
比較;如果Ndb_replica_max_replicated_epoch
是兩者中較大的值,則尚未偵測到衝突。更多資訊,請參閱第 25.7.12 節,「NDB Cluster 複製衝突解決方案」。
此變數保存自上次啟動 NDB Cluster 以來,
NDBCLUSTER
執行掃描的總次數計數。Ndb_slave_max_replicated_epoch
Ndb_replica_max_replicated_epoch
的已棄用同義詞。如果此 MySQL Server 連接到 NDB 叢集,則此唯讀變數會顯示叢集系統名稱。否則,該值為空字串。
目前會話中已開始使用提示的事務數量。與
Ndb_api_trans_start_count_session
比較,以取得能夠使用提示的所有 NDB 事務的比例。