このセクションでは、NDB Cluster に固有の MySQL サーバーオプション、サーバーおよびステータス変数について説明します。 これらの使用に関する一般的な情報、および NDB Cluster に固有でないその他のオプションと変数については、セクション5.1「MySQL Server」 を参照してください。
クラスタ構成ファイル (通常は config.ini
という名前) で使用される NDB Cluster 構成パラメータについては、セクション23.3「NDB Cluster の構成」 を参照してください。
このセクションでは、NDB Cluster に関連する mysqld サーバーオプションについて説明します。 NDB Cluster に固有ではない mysqld オプションについて、および mysqld でのオプションの使用に関する一般的な情報については、セクション5.1.7「サーバーコマンドオプション」 を参照してください。
ほかの NDB Cluster プロセス (ndbd、ndb_mgmd、および ndb_mgm) で使用されるコマンド行オプションについては、セクション23.4.32「NDB Cluster プログラムに共通のオプション — NDB Cluster プログラムに共通のオプション」 を参照してください。 NDB
のユーティリティープログラム (ndb_desc、ndb_size.pl、ndb_show_tables など) で使用されるコマンド行オプションについては、セクション23.4「NDB Cluster プログラム」を参照してください。
-
コマンド行形式 --ndbcluster[=value]
無効化 skip-ndbcluster
型 列挙 デフォルト値 ON
有効な値 OFF
FORCE
NDB Cluster を使用するには、
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
ヒントの適用いいえ 型 Boolean デフォルト値 ON
ALTER TABLE
および他の DDL ステートメントでNDB
テーブルのコピー操作を使用できるようにします。 これが発生しないようにするには、OFF
に設定します。そうすると、クリティカルなアプリケーションのパフォーマンスが向上する可能性があります。 -
コマンド行形式 --ndb-batch-size
システム変数 ndb_batch_size
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 32768
最小値 0
最大値 31536000
これは、NDB のトランザクションバッチで使用されるサイズ (バイト単位) を設定します。
-
--ndb-cluster-connection-pool=
#
コマンド行形式 --ndb-cluster-connection-pool
システム変数 ndb_cluster_connection_pool
システム変数 ndb_cluster_connection_pool
スコープ グローバル スコープ グローバル 動的 いいえ 動的 いいえ SET_VAR
ヒントの適用いいえ SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 1
最小値 1
最大値 63
このオプションを 1 (デフォルト) より大きい値に設定すると、mysqld プロセスはクラスタに対して複数の接続を使用し、実質的に複数の SQL ノードを模倣します。 各接続には、クラスタ構成 (
config.ini
) ファイル内に固有の[api]
または[mysqld]
セクションを必要とし、クラスタでサポートされる API 接続の最大数を参照してカウントされます。2 台のクラスタホストコンピュータがあり、実行している各 SQL ノードの mysqld プロセスが
--ndb-cluster-connection-pool=4
を指定して起動されたとします。これは、これらの接続に使用できる API スロットがクラスタに (2 個ではなく) 8 個存在する必要があることを意味します。 これらすべての接続は、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
ヒントの適用いいえ 型 Set デフォルト値 SQL ノードで使用されるクラスタに接続するためのノード ID のカンマ区切りリストを指定します。 このリストのノード数は、
--ndb-cluster-connection-pool
オプションに設定された値と同じである必要があります。 -
--ndb-blob-read-batch-bytes=
bytes
コマンド行形式 --ndb-blob-read-batch-bytes
システム変数 ndb_blob_read_batch_bytes
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 65536
最小値 0
最大値 4294967295
このオプションを使用すると、NDB Cluster アプリケーションで
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
ヒントの適用いいえ 型 Integer デフォルト値 65536
最小値 0
最大値 4294967295
このオプションを使用すると、NDB Cluster アプリケーションで
BLOB
データ書き込みをバッチ処理するためのサイズ (バイト単位) を設定できます。 現在のトランザクション内で書き込まれるBLOB
データの量がこのバッチサイズを超えると、保留中のすべてのBLOB
書き込み操作がただちに実行されます。このオプションの最大値は 4294967295 です。デフォルトは 65536 です。 0 に設定すると、
BLOB
書き込みのバッチ化を無効にします。注記NDB API アプリケーションでは、
setMaxPendingBlobWriteBytes()
およびgetMaxPendingBlobWriteBytes()
メソッドを使用するとBLOB
書き込みのバッチ化を制御できます。 -
--ndb-connectstring=
connection_string
コマンド行形式 --ndb-connectstring
型 文字列 このオプションは、
NDBCLUSTER
ストレージエンジンの使用時に、クラスタ構成データを配信する管理サーバーを指定します。 構文については、セクション23.3.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
を設定します (セクション13.1.20「CREATE TABLE ステートメント」 を参照)。 デフォルトはFIXED
です。 -
--ndb-deferred-constraints=[0|1]
コマンド行形式 --ndb-deferred-constraints
システム変数 ndb_deferred_constraints
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 0
最小値 0
最大値 1
一意のインデックスに対する制約チェックがサポートされている場合に、チェックをコミット時まで遅延するかどうかを制御します。
0
がデフォルトです。このオプションは通常、NDB Cluster または NDB Cluster レプリケーションの操作には必要なく、主にテストで使用することを目的としています。
-
コマンド行形式 --ndb-schema-dist-timeout=#
導入 8.0.17-ndb-8.0.17 システム変数 ndb_schema_dist_timeout
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 120
最小値 5
最大値 1200
単位 seconds
この 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
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
レプリカ mysqld は、即時ソースから受信した更新を、ソースのサーバー ID ではなく独自のサーバー ID を使用して、独自のバイナリログ内の
mysql.ndb_apply_status
テーブルに記録します。 循環レプリケーションまたはチェーンレプリケーション設定では、このような更新を、現在の mysqld のレプリカとして構成されている MySQL サーバーのmysql.ndb_apply_status
テーブルに伝播できます。チェーンレプリケーション設定でこのオプションを使用すると、ダウンストリーム (レプリカ) クラスタは、すべてのアップストリームコンプリタ (ソース) に対して相対的な位置を認識できます。
循環レプリケーション設定では、このオプションを使用すると、
ndb_apply_status
テーブルへの変更によって回路全体が完了し、最終的に元の NDB Cluster に伝播されます。 これにより、レプリケーションソースとして機能するクラスタは、その変更 (エポック) が円の他のクラスタに適用された時期を確認することもできます。このオプションは、MySQL サーバーが
--ndbcluster
オプションを使用して起動されていない場合は無効になります。 -
--ndb-log-empty-epochs=[ON|OFF]
コマンド行形式 --ndb-log-empty-epochs[={OFF|ON}]
システム変数 ndb_log_empty_epochs
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
log_slave_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
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
log_slave_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
ヒントの適用いいえ 型 Boolean デフォルト値 0
このオプションを使用してサーバーを起動すると、主キーの読み取りが排他ロックで記録されるため、NDB Cluster レプリケーションの競合検出および読み取りの競合に基づく解決が可能になります。
ndb_log_exclusive_reads
システム変数の値を 1 または 0 に設定すると、このロックを実行時に有効または無効にすることもできます。0 (ロックを無効化) がデフォルトです。詳細は、読み取り競合の検出と解決を参照してください。
-
コマンド行形式 --ndb-log-fail-terminate
導入 8.0.21-ndb-8.0.21 システム変数 ndb_log_fail_terminate
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 FALSE
このオプションが指定され、見つかったすべての行イベントの完全なロギングが不可能な場合、mysqld プロセスは終了します。
-
コマンド行形式 --ndb-log-orig[={OFF|ON}]
システム変数 ndb_log_orig
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
発信元サーバーの ID とエポックを
ndb_binlog_index
テーブルに記録します。注記これにより、特定のエポックが、元のエポックごとに 1 つずつ、
ndb_binlog_index
に複数の行を持つことができます。詳細は、セクション23.6.4「NDB Cluster レプリケーションスキーマおよびテーブル」を参照してください。
-
コマンド行形式 --ndb-log-transaction-id[={OFF|ON}]
システム変数 ndb_log_transaction_id
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
レプリカ mysqld が NDB トランザクション ID をバイナリログの各行に書き込みます。 デフォルト値は
FALSE
です。このオプションはメインラインの MySQL Server 8.0 ではサポートされません。
NDB$EPOCH_TRANS()
関数を使用して NDB Cluster レプリケーションの競合検出および解決を有効にする必要があります (NDB$EPOCH_TRANS() を参照)。 詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。--ndb-log-transaction-id
を使用する場合は、非推奨のlog_bin_use_v1_row_events
システム変数 (デフォルトはOFF
) をON
に設定しないでください。 -
コマンド行形式 --ndb-log-update-minimal[={OFF|ON}]
システム変数 ndb_log_update_minimal
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
ビフォアイメージに主キー値のみを書き込み、アフターイメージに変更されたカラムのみを書き込むことで、最小限の方法で更新を記録します。 これにより、
NDB
以外のストレージエンジンにレプリケートする場合に互換性の問題が発生する可能性があります。 -
コマンド行形式 --ndb-mgmd-host=host_name[:port_num]
型 文字列 デフォルト値 localhost:1186
プログラムに接続される単一の管理サーバーのホストとポート番号の設定に使用できます。 プログラムの接続情報として複数の管理サーバーのノード ID または参照 (あるいはその両方) が必要な場合は、代わりに
--ndb-connectstring
オプションを使用します。 -
コマンド行形式 --ndb-nodeid=#
ステータス変数 Ndb_cluster_node_id
スコープ グローバル 動的 いいえ 型 Integer 最小値 1
最大値 255
最大値 63
NDB Cluster でこの MySQL サーバーノード ID を設定します。
--ndb-nodeid
オプションは、--ndb-connectstring
で設定されたノード ID を (2 つのオプションの使用順序に関係なく) オーバーライドします。また、
--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 の詳細は、セクション23.3.3.7「NDB Cluster での SQL およびその他の API ノードの定義」 を参照してください。
-
コマンド行形式 --ndbinfo[=value]
(≥ 8.0.13-ndb-8.0.13)導入 8.0.13-ndb-8.0.13 型 列挙 デフォルト値 ON
有効な値 ON
OFF
FORCE
ndbinfo
情報データベースのプラグインを有効にします。 デフォルトでは、NDBCLUSTER
が有効になっている場合は常に ON です。 -
--ndb-optimization-delay=
milliseconds
コマンド行形式 --ndb-optimization-delay=#
システム変数 ndb_optimization_delay
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 10
最小値 0
最大値 100000
NDB
テーブルに対するOPTIMIZE TABLE
ステートメントによる行セット間で待機するミリ秒数を設定します。 デフォルトは 10 です。 -
--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 Server が起動しなくなります。ndb_transid_mysql_connection_map
テーブルプラグインが実行されているかどうかを確認するには、SHOW PLUGINS
の出力をチェックします。 -
コマンド行形式 --ndb-wait-connected=#
システム変数 ndb_wait_connected
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 30
最小値 0
最大値 31536000
このオプションは、MySQL クライアント接続を受け入れる前に、NDB Cluster 管理およびデータノードへの接続が確立されるのを MySQL サーバーが待機する期間を設定します。 この時間は秒単位で指定します。 デフォルト値は
30
です。 -
コマンド行形式 --ndb-wait-setup=#
システム変数 ndb_wait_setup
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 30
デフォルト値 30
デフォルト値 15
デフォルト値 15
最小値 0
最大値 31536000
この変数は、MySQL サーバーが
NDB
ストレージエンジンのセットアップが完了されるまで待機しタイムアウトして、NDB
を使用不可として扱うまでの時間を示します。 この時間は秒単位で指定します。 デフォルト値は30
です。 -
コマンド行形式 --skip-ndbcluster
NDBCLUSTER
ストレージエンジンを無効にします。 これは、NDBCLUSTER
ストレージエンジンのサポート付きでビルドされたバイナリのデフォルトです。サーバーは、--ndbcluster
オプションが明示的に指定された場合にのみ、このストレージエンジン用にメモリーおよびその他のリソースを割り当てます。 例については、セクション23.3.1「NDB Cluster のクイックテスト設定」を参照してください。
このセクションでは、NDB Cluster および NDB
ストレージエンジンに固有の MySQL サーバーシステム変数について詳しく説明します。 NDB Cluster に固有でないシステム変数については、セクション5.1.8「サーバーシステム変数」 を参照してください。 システム変数の使用に関する一般情報は、セクション5.1.9「システム変数の使用」を参照してください。
-
コマンド行形式 --ndb-autoincrement-prefetch-sz=#
システム変数 ndb_autoincrement_prefetch_sz
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 (≥ 8.0.19-ndb-8.0.19) 512
デフォルト値 (≤ 8.0.18-ndb-8.0.18) 1
最小値 1
最大値 65536
自動インクリメントカラムのギャップの可能性を指定します。 これを最小化するには、
1
に設定します。 最適化のために高い値に設定すると、挿入は高速になりますが、挿入のバッチで連続する自動インクリメント番号が使用される可能性は低くなります。この変数は、ステートメント間でフェッチされる
AUTO_INCREMENT
ID の数にのみ影響します。特定のステートメント内では、一度に少なくとも 32 個の ID が取得されます。重要この変数は、
INSERT ... SELECT
を使用して実行される挿入には影響しません。 -
コマンド行形式 --ndb-cache-check-time=#
非推奨 はい システム変数 ndb_cache_check_time
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 0
MySQL クエリーキャッシュによる NDB Cluster SQL ノードのチェック間に経過するミリ秒数。 これを 0 (デフォルトおよび最小値) に設定すると、クエリーキャッシュですべてのクエリーの妥当性がチェックされます。
この変数の推奨最大値は 1000 です。これは、チェックが毎秒 1 回行われることを意味します。 より大きな値にすると、チェックが実行され、場合によっては異なる SQL ノードでの更新のために無効になる頻度が少なくなります。 これを 2000 より大きな値に設定することは、通常、望ましくありません。
注記クエリーキャッシュ
ndb_cache_check_time
は MySQL 5.7 で非推奨になりました。クエリーキャッシュは MySQL 8.0 で削除されました。 -
コマンド行形式 --ndb-clear-apply-status[={OFF|ON}]
システム変数 ndb_clear_apply_status
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 ON
デフォルトでは、
RESET SLAVE
を実行すると NDB Cluster レプリカはそのndb_apply_status
テーブルからすべての行をパージします。 これを無効にするには、ndb_clear_apply_status=OFF
を設定します。 -
コマンド行形式 --ndb-conflict-role=value
導入 8.0.23-ndb-8.0.23 システム変数 ndb_conflict_role
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 列挙 デフォルト値 NONE
有効な値 NONE
PRIMARY
SECONDARY
PASS
循環 (「active-active」) レプリケーション設定でのこの SQL ノード (および NDB Cluster) の役割を決定します。
ndb_slave_conflict_role
には、PRIMARY
,SECONDARY
,PASS
またはNULL
(デフォルト) のいずれかの値を指定できます。ndb_slave_conflict_role
を変更する前に、レプリカ SQL スレッドを停止する必要があります。 また、これをPASS
とPRIMARY
またはSECONDARY
のいずれかの間で直接変更することはできません。変更する場合は、SQL スレッドが停止していることを確認してから、先にSET @@GLOBAL.ndb_slave_conflict_role = 'NONE'
を実行する必要があります。NDB 8.0.23 の時点で非推奨になった
ndb_slave_conflict_role
は、この変数に置き換えられます。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
コマンド行形式 --ndb-data-node-neighbour=#
システム変数 ndb_data_node_neighbour
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 0
最小値 0
最大値 255
「nearest」 データノードの ID を設定します。つまり、SQL または API ノードと同じホストで実行されているノードではなく、優先される非ローカルデータノードがトランザクションの実行に選択されます。 これは、完全にレプリケートされたテーブルにアクセスするときに、テーブルのローカルコピーが可能なかぎり常に使用されるように、このデータノード上でアクセスするために使用されます。 これは、トランザクションのヒントを提供するためにも使用できます。
これにより、物理的に同じホスト上の他のノードよりも近く、ネットワークスループットが高いノードの場合に、データアクセス時間を改善できます。
詳細は、セクション13.1.20.11「NDB_TABLE オプションの設定」 を参照してください。
注記NDB API アプリケーションで使用するための同等の方法
set_data_node_neighbour()
が提供されています。 -
コマンド行形式 --ndb-dbg-check-shares=#
導入 8.0.13-ndb-8.0.13 システム変数 ndb_dbg_check_shares
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 0
最小値 0
最大値 1
1 に設定した場合は、リンガリングしているシェアがないことを確認します。 デバッグビルドでのみ使用できます。
NDB 8.0.13 に追加されました。
-
コマンド行形式 --ndb-default-column-format={FIXED|DYNAMIC}
システム変数 ndb_default_column_format
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 列挙 デフォルト値 FIXED
有効な値 FIXED
DYNAMIC
新しいテーブルのデフォルトの
COLUMN_FORMAT
およびROW_FORMAT
を設定します (セクション13.1.20「CREATE TABLE ステートメント」 を参照)。 デフォルトはFIXED
です。 -
コマンド行形式 --ndb-deferred-constraints=#
システム変数 ndb_deferred_constraints
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 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
ヒントの適用いいえ 型 Integer デフォルト値 20
最小値 1
最大値 99
イベントバッファ (ndb_eventbuffer_max_alloc) に割り当てられる最大メモリーの割合を設定します。この値は、最大値に達した後、再度バッファを開始する前にイベントバッファで使用可能である必要があります。
-
コマンド行形式 --ndb-eventbuffer-max-alloc=#
システム変数 ndb_eventbuffer_max_alloc
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 0
最小値 0
最大値 4294967295
NDB API によるイベントのバッファリングに割り当てる可能な最大メモリー量 (バイト単位) を設定します。0 はデフォルトで、制限が適用されません。
-
コマンド行形式 ndb_extra_logging=#
システム変数 ndb_extra_logging
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 1
この変数は、
NDB
ストレージエンジンに固有の情報を MySQL エラーログに記録できるようにします。この変数を 0 に設定すると、MySQL エラーログに書き込まれる
NDB
固有の情報がトランザクション処理に関するものだけになります。 0 より大きく 10 より小さい値に設定すると、NDB
のテーブルスキーマイベントと接続イベント、競合解決の使用中の有無、およびNDB
のその他のエラーと情報も記録されます。 値を 10 以上に設定すると、NDB
の内部に関する情報 (クラスタノード間のデータ分配の進行状況など) も MySQL エラーログに書き込まれます。 デフォルトは 1 です。 -
コマンド行形式 --ndb-force-send[={OFF|ON}]
システム変数 ndb_force_send
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 ON
ほかのスレッドを待機せずに、バッファーを
NDB
にただちに送信します。 デフォルトはON
です。 -
コマンド行形式 --ndb-fully-replicated[={OFF|ON}]
システム変数 ndb_fully_replicated
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
新しい
NDB
テーブルを完全にレプリケートするかどうかを決定します。 この設定は、CREATE TABLE
ステートメントまたはALTER TABLE
ステートメントでCOMMENT="NDB_TABLE=FULLY_REPLICATED=..."
を使用して、個々のテーブルに対してオーバーライドできます。構文およびその他の情報は、セクション13.1.20.11「NDB_TABLE オプションの設定」 を参照してください。 -
コマンド行形式 --ndb-index-stat-enable[={OFF|ON}]
システム変数 ndb_index_stat_enable
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 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
を使用できます。この変数を使用して設定できるオプションの名前を次の表に示します。 この表には、オプションの簡単な説明、デフォルト値、および (適用可能な場合は) 最小値と最大値も示します。
表 23.20 ndb_index_stat_option のオプションと値
名前 説明 デフォルト/単位 最小/最大 loop_enable
1000 ms 0/4G loop_idle
アイドル時のスリープ時間 1000 ms 0/4G loop_busy
追加作業が待機しているときのスリープ時間 100 ms 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 m 1/4G delete_batch
8 0/4G clean_delay
1 m 0/4G error_batch
4 1/4G error_delay
1 m 1/4G evict_batch
8 1/4G evict_delay
LRU キャッシュを削除します (読み取り時から) 1 m 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
ヒントの適用いいえ 型 Boolean デフォルト値 ON
この変数は、
NDB
テーブル上の結合が NDB カーネル (データノード) にプッシュダウンされるかどうかを制御します。 以前は、SQL ノードによるNDB
の複数アクセスにより結合が処理されていましたが、ndb_join_pushdown
を有効にすると、プッシュ可能な結合のすべてがデータノードに送信されます。この場合、結合はデータノード間で分配され、データの複数のコピーに対して並列で実行され、単一のマージされた結果が mysqld に返されます。 これにより、このような結合を処理するために必要な SQL ノードとデータノード間のラウンドトリップの回数を大幅に減らすことができます。デフォルトでは、
ndb_join_pushdown
は有効になっています。NDB プッシュダウン結合の条件. 結合をプッシュ可能にするには、次の条件を満たす必要があります。
-
比較できるのはカラムのみであり、結合されるすべてのカラムが完全に同じデータ型を使用している必要があります。 つまり、
INT
カラムとBIGINT
カラムの結合もプッシュダウンできません。以前は、
t1.a = t2.a +
などの式をプッシュダウンできませんでした。 この制限は NDB 8.0.18 以降で解除されています。 比較するカラムに対する操作の結果は、カラム自体と同じ型になる必要があります。constant
NDB 8.0.18 以降では、同じテーブルのカラムを比較する式をプッシュダウンできます。 カラム (またはこれらのカラムに対する操作の結果) は、同じ符号、長さ、文字セットと照合順序、精度およびスケール (該当する場合) を含む、まったく同じタイプである必要があります。
BLOB
またはTEXT
カラムを参照するクエリーはサポートされません。-
明示的なロックはサポートされません。ただし、
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
によって結合され、かつその結果がソートされたインデックスによって順序付けまたはグループ化された場合、このインデックスはソートされた行を提供できず、ソートされた一時ファイルへの書き込みが強制されます。プッシュされた結合の動作については、追加の情報源が 2 つあります。
ステータス変数
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
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
--ndb-log-apply-status
オプションを使用してサーバーが起動されたかどうかを示す読み取り専用の変数。 -
コマンド行形式 --ndb-log-bin[={OFF|ON}]
システム変数 ndb_log_bin
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 (≥ 8.0.16-ndb-8.0.16) OFF
デフォルト値 (≤ 8.0.15-ndb-8.0.15) ON
NDB
テーブルの更新がバイナリログに書き込まれるようになります。log_bin
を使用しているサーバーでバイナリロギングがまだ有効になっていない場合、この変数の設定は無効です。 NDB 8.0.16 以降では、ndb_log_bin
のデフォルトは 0 (FALSE) です。 -
コマンド行形式 --ndb-log-binlog-index[={OFF|ON}]
システム変数 ndb_log_binlog_index
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 ON
エポックとバイナリログ内の位置とのマッピングが
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
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
この変数を 0 に設定すると、変更がなかったエポックトランザクションがバイナリログに書き込まれなくなりますが、
ndb_binlog_index
には空のエポックの行も書き込まれます。 -
コマンド行形式 --ndb-log-empty-update[={OFF|ON}]
システム変数 ndb_log_empty_update
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
この変数が
ON
(1
) に設定されている場合、log_slave_updates
が有効になっていても、変更のない更新トランザクションはバイナリログに書き込まれます。 -
コマンド行形式 --ndb-log-exclusive-reads[={OFF|ON}]
システム変数 ndb_log_exclusive_reads
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 0
この変数は、主キーの読み取りを排他ロックで記録するかどうかを決定します。これにより、NDB Cluster レプリケーションの競合検出および読み取りの競合に基づく解決が可能になります。 このロックを有効にするには、
ndb_log_exclusive_reads
の値を 1 に設定します。0 (このようなロックを無効にする) がデフォルトです。詳細は、読み取り競合の検出と解決を参照してください。
-
コマンド行形式 --ndb-log-orig[={OFF|ON}]
システム変数 ndb_log_orig
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
発信元サーバーの ID とエポックが
ndb_binlog_index
テーブルに記録されるかどうかを示します。--ndb-log-orig
サーバーオプションを使用して設定します。 -
システム変数 ndb_log_transaction_id
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
この読み取り専用のブールシステム変数は、レプリカ mysqld が NDB トランザクション ID をバイナリログに書き込むかどうかを示します (
NDB$EPOCH_TRANS()
競合検出で 「active-active」 NDB Cluster レプリケーションを使用するために必要です)。 この設定を変更するには、--ndb-log-transaction-id
オプションを使用します。メインラインの MySQL Server 8.0 では
ndb_log_transaction_id
はサポートされません。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
コマンド行形式 --ndb-metadata-check[={OFF|ON}]
導入 8.0.16-ndb-8.0.16 システム変数 ndb_metadata_check
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 ON
NDB 8.0.16 以降、
NDB
はバックグラウンドスレッドを使用して、MySQL データディクショナリと比較してndb_metadata_check_interval
秒ごとにメタデータの変更をチェックします。 このメタデータ変更検出スレッドは、ndb_metadata_check
をOFF
に設定することで無効にできます。 スレッドはデフォルトで有効になっています。 -
コマンド行形式 --ndb-metadata-check-interval=#
導入 8.0.16-ndb-8.0.16 システム変数 ndb_metadata_check_interval
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 60
最小値 0
最大値 31536000
単位 seconds
NDB 8.0.16 以降では、NDB はメタデータ変更検出スレッドをバックグラウンドで実行して、NDB ディクショナリが MySQL データディクショナリに関していつ変更されたかを判断します。 デフォルトでは、このようなチェックの間隔は 60 秒です。これは、
ndb_metadata_check_interval
の値を設定することで調整できます。 スレッドを有効または無効にするには、ndb_metadata_check
を使用します。 -
導入 8.0.19-ndb-8.0.19 システム変数 ndb_metadata_sync
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 false
この変数を設定すると、変更モニタースレッドは
ndb_metadata_check
またはndb_metadata_check_interval
に設定された値をオーバーライドし、連続した変更検出の期間を入力します。 スレッドは、検出する変更がなくなったことを確認すると、バイナリロギングスレッドが検出されたすべてのオブジェクトの同期を終了するまで停止します。その後、ndb_metadata_sync
はfalse
に設定され、変更モニタースレッドはndb_metadata_check
およびndb_metadata_check_interval
の設定によって決定された動作に戻ります。NDB 8.0.22 以降では、この変数を
true
に設定すると、除外されたオブジェクトのリストがクリアされ、false
に設定すると、再試行されるオブジェクトのリストがクリアされます。 -
コマンド行形式 --ndb-optimized-node-selection=#
システム変数 ndb_optimized_node_selection
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 3
最小値 0
最大値 3
最適化されたノードの選択には、ここの示す 2 つの形式があります。
SQL ノードは、近接性を使用してトランザクションコーディネータを指定します。つまり、その SQL ノードから「もっとも近い」データノードがトランザクションコーディネータとして選択されます。 この目的のために、SQL ノードとの共有メモリー接続を持つデータノードは、SQL ノードへの 「closest」 とみなされます。次に近い (近接度が低い順に):
localhost
への TCP 接続に続いて、localhost
以外のホストからの TCP 接続。SQL スレッドは、分布の認識を使用してデータノードを選択します。 つまり、特定のトランザクションの最初のステートメントによってアクセスされるクラスタパーティションを収容するデータノードが、トランザクション全体のトランザクションコーディネータとして使用されます。 (これは、トランザクションの最初のステートメントが 1 つのクラスタパーティションにしかアクセスしない場合にのみ有効です。)
このオプションは、
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
ヒントの適用いいえ 型 Boolean デフォルト値 (≥ 8.0.19-ndb-8.0.19) ON
デフォルト値 (≤ 8.0.18-ndb-8.0.18) OFF
その後作成される
NDB
テーブルのフラグメントレプリカからの読取りを有効にします。これにより、テーブルの読取りパフォーマンスが比較的低い書込みコストで大幅に向上します。個々のテーブルのフラグメントレプリカからの読取りを有効または無効にするには、
CREATE TABLE
またはALTER TABLE
ステートメントで、それに応じてテーブルのNDB_TABLE
オプションREAD_BACKUP
を設定します。詳細は、セクション13.1.20.11「NDB_TABLE オプションの設定」 を参照してください。 -
ndb_recv_thread_activation_threshold
コマンド行形式 --ndb-recv-thread-activation-threshold=#
システム変数 ndb_recv_thread_activation_threshold
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 8
最小値 0 (MIN_ACTIVATION_THRESHOLD)
最大値 16 (MAX_ACTIVATION_THRESHOLD)
現在アクティブなスレッドがこの数に達すると、受信スレッドがクラスタ接続のポーリングを引き継ぎます。
この変数のスコープはグローバルです。 起動時に設定することもできます。
-
コマンド行形式 --ndb-recv-thread-cpu-mask=mask
システム変数 ndb_recv_thread_cpu_mask
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 ビットマップ デフォルト値 [empty]
受信者スレッドを特定の CPU にロックするための CPU マスク。 これは 16 進数ビットマスクとして指定されます。 たとえば、
0x33
は、受信側スレッドごとに 1 つの 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
ヒントの適用いいえ 型 Integer デフォルト値 10
最小値 0
最大値 256
これは、イベントバッファに完全にバッファされたが、binlog インジェクタスレッドによってまだ消費されていないエポックの数のしきい値を表します。 このスリッピング (ラグ) の程度を超えると、理由として
BUFFERED_EPOCHS_OVER_THRESHOLD
が提供されたイベントバッファステータスメッセージがレポートされます (セクション23.5.2.3「クラスタログでのイベントバッファのレポート」 を参照)。 データノードからエポックが受信され、イベントバッファーに完全にバッファリングされると、スリップが増加します。エポックが binlog インジェクタスレッドによって消費されると、スリップは減少します。 空のエポックはバッファリングされてキューに入れられるため、NDB API のNdb::setEventBufferQueueEmptyEpoch()
メソッドを使用してこれが有効になっている場合にのみ、この計算に含められます。 -
ndb_report_thresh_binlog_mem_usage
コマンド行形式 --ndb-report-thresh-binlog-mem-usage=#
システム変数 ndb_report_thresh_binlog_mem_usage
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 10
最小値 0
最大値 10
これは、バイナリログのステータスを報告するまでに残存する空きメモリーの割合に対するしきい値です。 たとえば、
10
(デフォルト) の値は、データノードからバイナリログデータを受信するために使用可能なメモリーの量が 10% を下回ると、ステータスメッセージがクラスタログに送信されることを意味します。 -
システム変数 ndb_row_checksum
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 1
最小値 0
最大値 1
従来、
NDB
では、パフォーマンスを犠牲にしてハードウェアの問題をチェックする行チェックサムを含むテーブルが作成されていました。ndb_row_checksum
を 0 に設定すると、行チェックサムは新規または変更されたテーブルには使用されず、すべてのタイプのクエリーのパフォーマンスに大きく影響します。 この変数はデフォルトで 1 に設定され、下位互換性のある動作を提供します。 -
ndb_schema_dist_lock_wait_timeout
コマンド行形式 --ndb-schema-dist-lock-wait-timeout=value
導入 8.0.18-ndb-8.0.18 システム変数 ndb_schema_dist_lock_wait_timeout
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 30
最小値 0
最大値 1200
単位 seconds
DDL ステートメントの変更を反映するようにローカルデータディクショナリを変更するために各 SQL ノードで取得されたメタデータロックのスキーマ分散中に待機する秒数。 この時間が経過すると、特定の SQL ノードデータディクショナリが変更で更新されなかったことを示す警告が返されます。 これにより、バイナリロギングスレッドがスキーマ操作の処理中に過剰な時間待機することを回避できます。
-
コマンド行形式 --ndb-schema-dist-timeout=value
導入 8.0.16-ndb-8.0.16 システム変数 ndb_schema_dist_timeout
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 120
最小値 5
最大値 1200
単位 seconds
スキーマ分散中にタイムアウトを検出するまで待機する秒数。 これは、他の SQL ノードで過剰なアクティビティが発生しているか、この時点で必要なリソースを取得できない可能性があることを示します。
-
ndb_schema_dist_upgrade_allowed
コマンド行形式 --ndb-schema-dist-upgrade-allowed=value
導入 8.0.17-ndb-8.0.17 システム変数 ndb_schema_dist_upgrade_allowed
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 true
NDB
への接続時にスキーマ分散テーブルのアップグレードを許可します。 true (デフォルト) の場合、この変更はすべての SQL ノードが同じバージョンの NDB Cluster ソフトウェアにアップグレードされるまで延期されます。注記スキーマ分散のパフォーマンスは、アップグレードが実行されるまで多少低下する可能性があります。
-
ndb_show_foreign_key_mock_tables
コマンド行形式 --ndb-show-foreign-key-mock-tables[={OFF|ON}]
システム変数 ndb_show_foreign_key_mock_tables
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
NDB
がforeign_key_checks=0
のサポートに使用するモックテーブルを示します。 これを有効にすると、テーブルを作成および削除するときに追加の警告が表示されます。 このテーブルの実際の (内部の) 名前は、SHOW CREATE TABLE
の出力に表示されます。 -
コマンド行形式 --ndb-slave-conflict-role=value
非推奨 8.0.23-ndb-8.0.23 システム変数 ndb_slave_conflict_role
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 列挙 デフォルト値 NONE
有効な値 NONE
PRIMARY
SECONDARY
PASS
NDB 8.0.23 では非推奨であり、将来のリリースで削除される可能性があります。 かわりに
ndb_conflict_role
を使用してください。 -
システム変数 ndb_table_no_logging
スコープ セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
この変数を
ON
または1
に設定すると、NDB
テーブルのチェックポイントがディスクに対して実行されなくなります。 より具体的には、この設定はndb_table_no_logging
が有効になっているときにENGINE NDB
を使用して作成または変更されたテーブルに適用され、あとでndb_table_no_logging
が変更された場合でも、テーブルの存続期間にわたって適用され続けます。 ここに示すように、テーブルA
、B
、C
、およびD
を作成 (および変更) して、ndb_table_no_logging
の設定も変更したとします。SET @@ndb_table_no_logging = 1; CREATE TABLE A ... ENGINE NDB; CREATE TABLE B ... ENGINE MYISAM; CREATE TABLE C ... ENGINE MYISAM; ALTER TABLE B ENGINE NDB; SET @@ndb_table_no_logging = 0; CREATE TABLE D ... ENGINE NDB; ALTER TABLE C ENGINE NDB; SET @@ndb_table_no_logging = 1;
前の一連のイベントのあと、テーブル
A
とB
のチェックポイントは実行されません (A
はENGINE NDB
を使用して作成され、B はNDB
を使用するように変更されましたが、どちらもndb_table_no_logging
の有効時に行われたため)。 ただし、テーブルC
とD
は記録されます (C
はNDB
を使用するように変更され、D
はENGINE NDB
を使用して作成されましたが、どちらもndb_table_no_logging
の無効時に行われたため)。ndb_table_no_logging
を1
またはON
に再度設定しても、テーブルC
またはD
のチェックポイントは実行されません。注記ndb_table_no_logging
は、NDB
テーブルスキーマファイルの作成では無効になります。これをサポートするには、代わりにndb_table_temporary
を使用してください。 -
システム変数 ndb_table_temporary
スコープ セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
この変数を
ON
または1
に設定すると、NDB
テーブルがディスクに書き込まれなくなります。これは、テーブルスキーマファイルが作成されず、テーブルが記録されないことを意味します。注記現在、この変数を設定しても効果はありません。 これは既知の問題です。Bug #34036 を参照してください。
-
システム変数 ndb_use_copying_alter_table
スコープ グローバル、セッション 動的 いいえ SET_VAR
ヒントの適用いいえ オンラインの
ALTER TABLE
操作で問題が発生したときに、NDB
によりテーブルのコピーが強制的に使用されます。 デフォルト値はOFF
です。 -
システム変数 ndb_use_exact_count
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
SELECT COUNT(*)
クエリーでこのタイプのクエリーの高速化を計画するときに、NDB
によりレコードのカウントが強制的に使用されます。 デフォルト値はOFF
で、クエリー全体が高速化されます。 -
コマンド行形式 --ndb-use-transactions[={OFF|ON}]
システム変数 ndb_use_transactions
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 ON
NDB
のトランザクションサポートを無効にするには、この変数の値をOFF
に設定します (推奨されません)。 デフォルトはON
です。 -
システム変数 ndb_version
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 文字列 デフォルト値 NDB
エンジンのバージョン (合成整数として)。 -
システム変数 ndb_version_string
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 文字列 デフォルト値 NDB
エンジンのバージョン (ndb-
形式)。x.y.z
-
コマンド行形式 --server-id-bits=#
システム変数 server_id_bits
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 32
最小値 7
最大値 32
この変数は、実際にサーバーを識別する 32-bit
server_id
内の最下位ビットの数を示します。 サーバーが実際には 32 ビット未満で識別されることを示すと、NDB API Event API を使用してOperationOptions
構造のAnyValue
内でアプリケーションによって生成されたユーザーデータを格納するなど、残りのビットの一部をほかの目的に使用できます (NDB Cluster はAnyValue
を使用してサーバー ID を格納します)。サーバーは、レプリケーションループの検出などで
server_id
から有効なサーバー ID を抽出するときに、残りのビットを無視します。server_id_bits
変数は、サーバー ID に基づいてイベントを無視するかどうかを決定する際に、I/O および SQL スレッド内のserver_id
の無関係なビットをマスクアウトするために使用されます。このデータは、独自の
server_id_bits
変数を 32 (デフォルト) に設定して実行すると、mysqlbinlog によってバイナリログから読み取ることができます。server_id
の値がserver_id_bits
の累乗に対して 2 以上の場合、mysqld は起動を拒否します。このシステム変数は NDB Cluster でのみサポートされます。 標準の MySQL 8.0 Server ではサポートされません。
-
コマンド行形式 --slave-allow-batching[={OFF|ON}]
システム変数 slave_allow_batching
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
NDB Cluster レプリカでバッチ更新が有効になっているかどうか。
この変数の設定は、
NDB
ストレージエンジンでレプリケーションを使用する場合にのみ有効です。MySQL Server 8.0 では存在しますが、何も行いません。 詳細は、セクション23.6.6「NDB Cluster レプリケーションの開始 (シングルレプリケーションチャネル)」を参照してください。 -
システム変数 transaction_allow_batching
スコープ セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 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
ヒントの適用いいえ 型 Integer デフォルト値 0
テストとデバッグでのみ使用されます。
-
コマンド行形式 --ndbinfo-max-rows=#
システム変数 ndbinfo_max_rows
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Integer デフォルト値 10
テストとデバッグでのみ使用されます。
-
システム変数 ndbinfo_offline
スコープ グローバル 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
ndbinfo
データベースをオフラインモードにします。オフラインモードでは、テーブルやビューが実際には存在しない場合や、存在するがNDB
での定義が異なる場合でも、テーブルやビューを開くことができます。 このようなテーブル (またはビュー) からは、行は返されません。 -
コマンド行形式 --ndbinfo-show-hidden[={OFF|ON}]
システム変数 ndbinfo_show_hidden
スコープ グローバル、セッション 動的 はい SET_VAR
ヒントの適用いいえ 型 Boolean デフォルト値 OFF
有効な値 ON
OFF
ndbinfo
データベースのベースとなる内部テーブルがmysql
クライアントに表示されるかどうか。 デフォルトはOFF
です。 -
システム変数 ndbinfo_table_prefix
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 文字列 デフォルト値 ndb$
ndbinfo データベースのベーステーブル (
ndbinfo_show_hidden
を設定して公開されないかぎり、通常は非表示です) の名前に使用されるプリフィクス。 これは読取り専用変数で、デフォルト値はndb$
です。接頭辞自体はコンパイル時に決定されます。 -
システム変数 ndbinfo_version
スコープ グローバル 動的 いいえ SET_VAR
ヒントの適用いいえ 型 文字列 デフォルト値 使用中の
ndbinfo
エンジンのバージョンを示します (読み取り専用)。
このセクションでは、NDB Cluster および NDB
ストレージエンジンに関連する MySQL サーバーのステータス変数について詳しく説明します。 NDB Cluster に固有でないステータス変数、およびステータス変数の使用に関する一般的な情報については、セクション5.1.10「サーバーステータス変数」 を参照してください。
-
MySQL サーバーは、
NDBCLUSTER
ストレージエンジンに対して特定の名前を持つテーブルの情報を問い合わせることができます。 これは検出と呼ばれます。Handler_discover
は、このメカニズムを使用してテーブルが検出された回数を示します。 -
Ndb_api_adaptive_send_deferred_count
実際に送信されなかった適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_adaptive_send_deferred_count_session
実際に送信されなかった適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_adaptive_send_deferred_count_replica
このレプリカによって実際に送信されなかった適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_adaptive_send_deferred_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_adaptive_send_deferred_count_replica
を使用してください。このレプリカによって実際に送信されなかった適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_adaptive_send_forced_count
この MySQL Server (SQL ノード) によって送信された強制送信を使用した適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_adaptive_send_forced_count_session
このクライアントセッションで送信された強制送信を使用した適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_adaptive_send_forced_count_replica
このレプリカによって送信された強制送信を使用する適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_adaptive_send_forced_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_adaptive_send_forced_count_replica
を使用してください。このレプリカによって送信された強制送信を使用する適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_adaptive_send_unforced_count
この MySQL サーバー (SQL ノード) によって強制送信されていない適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_adaptive_send_unforced_count_session
このクライアントセッションで強制送信が送信されていない適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_adaptive_send_unforced_count_replica
このレプリカによって強制送信されていない適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_adaptive_send_unforced_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_adaptive_send_unforced_count_replica
を使用してください。このレプリカによって強制送信されていない適応送信コールの数。
詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_bytes_sent_count_session
このクライアントセッションでデータノードに送信されたデータ量 (バイト単位)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_bytes_sent_count_replica
このレプリカによってデータノードに送信されたデータの量 (バイト単位)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_bytes_sent_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_bytes_sent_count_replica
を使用してください。このレプリカによってデータノードに送信されたデータの量 (バイト単位)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) によってデータノードに送信されたデータ量 (バイト単位)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_bytes_received_count_session
このクライアントセッションでデータノードから受信されたデータ量 (バイト単位)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_bytes_received_count_replica
このレプリカによってデータノードから受信されたデータの量 (バイト単位)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_bytes_received_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_bytes_received_count_replica
を使用してください。このレプリカによってデータノードから受信されたデータの量 (バイト単位)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) によってデータノードから受信されたデータ量 (バイト単位)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_event_data_count_injector
NDB binlog インジェクタスレッドによって受信された行変更イベントの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) によって受信された行変更イベントの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_event_nondata_count_injector
NDB バイナリログインジェクタスレッドによって受信された、行変更イベント以外のイベントの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) によって受信された、行変更イベント以外のイベントの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_event_bytes_count_injector
NDB binlog インジェクタスレッドによって受信されたイベントのバイト数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) によって受信されたイベントのバイト数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
このクライアントセッションで、主キーに基づいた、または主キーを使用した操作の数。 これには、BLOB テーブルに対する操作、暗黙的なロック解除操作、自動インクリメント操作、およびユーザーの管理下にある主キー操作が含まれます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
主キーに基づいた、または主キーを使用した、このレプリカによる操作の数。 これには、BLOB テーブルに対する操作、暗黙的なロック解除操作、自動インクリメント操作、およびユーザーの管理下にある主キー操作が含まれます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
注記
NDB 8.0.23 では非推奨です。代わりに
Ndb_api_pk_op_count_replica
を使用してください。主キーに基づいた、または主キーを使用した、このレプリカによる操作の数。 これには、BLOB テーブルに対する操作、暗黙的なロック解除操作、自動インクリメント操作、およびユーザーの管理下にある主キー操作が含まれます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) による、主キーに基づいた、または主キーを使用した操作の数。 これには、BLOB テーブルに対する操作、暗黙的なロック解除操作、自動インクリメント操作、およびユーザーの管理下にある主キー操作が含まれます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_pruned_scan_count_session
このクライアントセッションで単一のパーティションにプルーニングされたスキャンの回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_pruned_scan_count_replica
単一のパーティションにプルーニングされた、このレプリカによるスキャンの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_pruned_scan_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_pruned_scan_count_replica
を使用してください。単一のパーティションにプルーニングされた、このレプリカによるスキャンの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) によって単一のパーティションにプルーニングされたスキャンの回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_range_scan_count_session
このクライアントセッションで開始された範囲スキャンの回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_range_scan_count_replica
このレプリカによって開始されたレンジスキャンの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_range_scan_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_range_scan_count_replica
を使用してください。このレプリカによって開始されたレンジスキャンの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) によって開始された範囲スキャンの回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_read_row_count_session
このクライアントセッションで読み取られた行の合計数。 これには、このクライアントセッションで作成された主キー、一意キー、またはスキャン操作によって読み取られたすべての行が含まれます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_read_row_count_replica
このレプリカによって読み取られた行の合計数。 これには、このレプリカによって作成された主キー、一意キーまたはスキャン操作によって読み取られたすべての行が含まれます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
注記
NDB 8.0.23 では非推奨です。代わりに
Ndb_api_read_row_count_replica
を使用してください。このレプリカによって読み取られた行の合計数。 これには、このレプリカによって作成された主キー、一意キーまたはスキャン操作によって読み取られたすべての行が含まれます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) によって読み取られた行の合計数。 これには、この MySQL Server (SQL ノード) によって作成された主キー、一意キー、またはスキャン操作によって読み取られたすべての行が含まれます。
SELECT
COUNT(*)
クエリーによって読み取られる行に関しては、この値が完全に正確でない場合があることに注意してください。この場合、MySQL サーバーは実際に[
形式で疑似行を読み取り、テーブル内のすべてのフラグメントのフラグメント当たりの行数を合計して、すべての行の推定数を導出します。table fragment ID
]:[number of rows in fragment
]Ndb_api_read_row_count
では、テーブルの実際の行数ではなく、この見積りが使用されます。この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_scan_batch_count_session
このクライアントセッションで受信された行のバッチ数。1 バッチは、単一のフラグメントから得られた 1 セットのスキャン結果として定義されます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_scan_batch_count_replica
このレプリカによって受信された行のバッチ数。1 バッチは、単一フラグメントからのスキャン結果の 1 セットとして定義されます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_scan_batch_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_scan_batch_count_replica
を使用してください。このレプリカによって受信された行のバッチ数。1 バッチは、単一フラグメントからのスキャン結果の 1 セットとして定義されます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL Server (SQL ノード) によって受信された行のバッチ数。1 バッチは、単一のフラグメントから得られた 1 セットのスキャン結果として定義されます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_table_scan_count_session
このクライアントセッションで開始された、内部テーブルのスキャンを含むテーブルスキャンの回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_table_scan_count_replica
このレプリカによって開始されたテーブルスキャンの数 (内部テーブルのスキャンを含む)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_table_scan_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_table_scan_count_replica
を使用してください。このレプリカによって開始されたテーブルスキャンの数 (内部テーブルのスキャンを含む)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) によって開始された、内部テーブルのスキャンを含むテーブルスキャンの回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_abort_count_session
このクライアントセッションで中止されたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_abort_count_replica
このレプリカによって中断されたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_abort_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_trans_abort_count_replica
を使用してください。このレプリカによって中断されたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) により中止されたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「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 のほかのクライアントには影響しません。詳細は、セクション23.5.13「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 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_close_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
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 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) により閉じられたトランザクションの数。 一部のトランザクションがロールバックされている場合があるため、この値は
Ndb_api_trans_commit_count
とNdb_api_trans_abort_count
の合計より大きくなることがあります。この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_commit_count_session
このクライアントセッションでコミットされたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_commit_count_replica
このレプリカによってコミットされたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_commit_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_trans_commit_count_replica
を使用してください。このレプリカによってコミットされたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) によりコミットされたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_local_read_row_count_session
このクライアントセッションで読み取られた行の合計数。 これには、このクライアントセッションで作成された主キー、一意キー、またはスキャン操作によって読み取られたすべての行が含まれます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_local_read_row_count_replica
このレプリカによって読み取られた行の合計数。 これには、このレプリカによって作成された主キー、一意キーまたはスキャン操作によって読み取られたすべての行が含まれます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_local_read_row_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_trans_local_read_row_count_replica
を使用してください。このレプリカによって読み取られた行の合計数。 これには、このレプリカによって作成された主キー、一意キーまたはスキャン操作によって読み取られたすべての行が含まれます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_local_read_row_count
この MySQL サーバー (SQL ノード) によって読み取られた行の合計数。 これには、この MySQL Server (SQL ノード) によって作成された主キー、一意キー、またはスキャン操作によって読み取られたすべての行が含まれます。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_start_count_session
このクライアントセッションで開始されたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_start_count_replica
このレプリカによって開始されたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_trans_start_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_trans_start_count_replica
を使用してください。このレプリカによって開始されたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) により開始されたトランザクションの数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
このクライアントセッションで、一意キーに基づいた、または一意キーを使用した操作の数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
一意キーに基づいた、または一意キーを使用した、このレプリカによる操作の数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
注記
NDB 8.0.23 では非推奨です。代わりに
Ndb_api_uk_op_count_replica
を使用してください。一意キーに基づいた、または一意キーを使用した、このレプリカによる操作の数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL サーバー (SQL ノード) による、一意キーに基づいた、または一意キーを使用した操作の数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_exec_complete_count_session
このクライアントセッションで、操作の実行が完了するのを待機する間にスレッドがブロックされた回数。 これには、すべての
execute()
コールと、クライアントに表示されない BLOB および自動増分操作に対する暗黙的な実行が含まれます。この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_exec_complete_count_replica
操作の実行が完了するのを待機している間に、このレプリカによってスレッドがブロックされた回数。 これには、すべての
execute()
コールと、クライアントに表示されない BLOB および自動増分操作に対する暗黙的な実行が含まれます。この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_exec_complete_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_wait_exec_complete_count_replica
を使用してください。操作の実行が完了するのを待機している間に、このレプリカによってスレッドがブロックされた回数。 これには、すべての
execute()
コールと、クライアントに表示されない BLOB および自動増分操作に対する暗黙的な実行が含まれます。この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_exec_complete_count
操作の実行が完了するまで待機する間に、この MySQL Server (SQL ノード) によってスレッドがブロックされた回数。 これには、すべての
execute()
コールと、クライアントに表示されない BLOB および自動増分操作に対する暗黙的な実行が含まれます。この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_meta_request_count_session
このクライアントセッションで、メタデータベースの信号 (DDL 要求、新しいエポック、トランザクションレコードの占有など) を待機する間にスレッドがブロックされた回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_meta_request_count_replica
DDL リクエスト、新しいエポック、トランザクションレコードの清算など、メタデータベースのシグナルを待機しているこのレプリカによってスレッドがブロックされた回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_meta_request_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_wait_meta_request_count_replica
を使用してください。DDL リクエスト、新しいエポック、トランザクションレコードの清算など、メタデータベースのシグナルを待機しているこのレプリカによってスレッドがブロックされた回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_meta_request_count
メタデータベースの信号 (DDL 要求、新しいエポック、トランザクションレコードの占有など) を待機する間に、この MySQL Server (SQL ノード) によってスレッドがブロックされた回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_nanos_count_session
このクライアントセッションで、データノードから送信される任意のタイプの信号の待機に費やされた合計時間 (ナノ秒)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_nanos_count_replica
このレプリカがデータノードからの任意のタイプのシグナルを待機するために費やした合計時間 (ナノ秒)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_nanos_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_wait_nanos_count_replica
を使用してください。このレプリカがデータノードからの任意のタイプのシグナルを待機するために費やした合計時間 (ナノ秒)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
この MySQL Server (SQL ノード) によって、データノードから送信される任意のタイプの信号の待機に費やされた合計時間 (ナノ秒)。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_scan_result_count_session
このクライアントセッションで、スキャンベースの信号を待機する間 (追加のスキャン結果を待機するときや、スキャンが閉じるまで待機するときなど) にスレッドがブロックされた回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、現在のセッションにのみ関連しており、この mysqld のほかのクライアントには影響しません。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_scan_result_count_replica
スキャンベースのシグナルを待機している間、またはスキャンの終了を待機しているときなどに、このレプリカによってスレッドがブロックされた回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_scan_result_count_slave
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_api_wait_scan_result_count_replica
を使用してください。スキャンベースのシグナルを待機している間、またはスキャンの終了を待機しているときなどに、このレプリカによってスレッドがブロックされた回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。 この MySQL サーバーがレプリカとして機能しない場合、または NDB テーブルを使用しない場合、この値は常に 0 です。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
Ndb_api_wait_scan_result_count
スキャンベースの信号を待機する間 (追加のスキャン結果を待機するときや、スキャンが閉じるまで待機するときなど) に、この MySQL Server (SQL ノード) によってスレッドがブロックされた回数。
この変数は、
SHOW GLOBAL STATUS
またはSHOW SESSION STATUS
を使用して読み取ることができますが、スコープは実質的にグローバルです。詳細は、セクション23.5.13「NDB API 統計のカウンタと変数」を参照してください。
-
サーバーが NDB Cluster ノードとして機能している場合、この変数の値はクラスタ内のそのノード ID です。
サーバーが NDB Cluster の一部でない場合、この変数の値は 0 です。
-
サーバーが NDB Cluster の一部である場合、この変数の値は、その構成データを取得するクラスタ管理サーバーのホスト名または IP アドレスです。
サーバーが NDB Cluster の一部でない場合、この変数の値は空の文字列になります。
-
サーバーが NDB Cluster の一部である場合、この変数の値は、サーバーが構成データを取得するクラスタ管理サーバーに接続されているポートの番号です。
サーバーが NDB Cluster の一部でない場合、この変数の値は 0 です。
-
クラスタの現在の構成の世代番号を表示します。 これは、この SQL ノードが最後にクラスタに接続してからクラスタの構成が変更されたかどうかを判断するインジケータとして使用できます。
-
この mysqld が最後に起動されてから、
NDB$MAX_DELETE_WIN()
を使用した NDB Cluster レプリケーション競合解決のために現在の SQL ノードで行が拒否された回数を示します。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
NDB Cluster レプリケーション競合解決で使用されるこの変数は、この mysqld が最後に起動されてから、「「最大のタイムスタンプ優先」」競合解決のために現在の SQL ノードに行が適用されなかった回数を示します。
詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
NDB Cluster レプリケーション競合解決で使用されるこの変数は、前回の再起動以降に、特定の mysqld で「「同じタイムスタンプを優先」」競合解決の結果として行が適用されなかった回数を示します。
詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
NDB Cluster レプリケーション競合解決で使用されるこの変数は、前回の再起動以降に、特定の mysqld で
NDB$EPOCH()
競合解決を使用して競合が検出された行数を示します。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
NDB$EPOCH2()
を使用しているときに、前回の再起動以降にプライマリとして指定されたソースで NDB Cluster レプリケーション競合解決で競合が検出された行数を表示します。詳細は、NDB$EPOCH2()を参照してください。
-
NDB Cluster レプリケーション競合解決で使用されるこの変数は、前回の再起動以降に、特定の mysqld で
NDB$EPOCH_TRANS()
競合解決を使用して競合が検出された行数を示します。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
NDB Cluster レプリケーション競合解決で使用されるこの変数は、前回の再起動以降に、特定の mysqld で
NDB$EPOCH_TRANS2()
競合解決を使用して競合が検出された行数を示します。詳細は、NDB$EPOCH2_TRANS()を参照してください。
-
Ndb_conflict_last_conflict_epoch
このレプリカで競合が検出された最新のエポック。 この値は
Ndb_replica_max_replicated_epoch
と比較できます。Ndb_replica_max_replicated_epoch
がNdb_conflict_last_conflict_epoch
より大きい場合、競合はまだ検出されていません。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
Ndb_conflict_reflected_op_discard_count
NDB Cluster レプリケーション競合解決を使用している場合、これは、実行中にエラーが発生したためにセカンダリに適用されなかった反映された操作の数です。
詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
Ndb_conflict_reflected_op_prepare_count
NDB Cluster レプリケーションで競合解決を使用する場合、このステータス変数には、定義されている (つまり、セカンダリで実行するために準備されている) 反映された操作の数が含まれます。
セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
NDB Cluster レプリケーションで競合解決を使用する場合、これにより、セカンダリで実行するために準備されているリフレッシュ操作の数がわかります。
詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
Ndb_conflict_last_stable_epoch
トランザクション競合関数によって競合状態であることが検出された行数
詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
Ndb_conflict_trans_row_conflict_count
NDB Cluster レプリケーション競合解決で使用されるこのステータス変数は、前回の再起動以降に、特定の mysqld 上のトランザクション競合関数によって直接競合していることが検出された行の数を示します。
現在、NDB Cluster でサポートされているトランザクション競合検出関数は NDB$EPOCH_TRANS() のみであるため、このステータス変数は事実上
Ndb_conflict_fn_epoch_trans
と同じです。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
Ndb_conflict_trans_row_reject_count
NDB Cluster レプリケーション競合解決で使用されるこのステータス変数は、トランザクション競合検出関数によって競合していると判断されたために再割り当てされた行の合計数を示します。 これには、
Ndb_conflict_trans_row_conflict_count
だけでなく、競合するトランザクションに含まれる行や依存する行も含まれます。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
Ndb_conflict_trans_reject_count
NDB Cluster レプリケーション競合解決で使用されるこのステータス変数は、トランザクション競合検出関数によって競合していることが検出されたトランザクションの数を示します。
詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
Ndb_conflict_trans_detect_iter_count
NDB Cluster レプリケーション競合解決で使用され、エポックトランザクションのコミットに必要な内部反復の数を示します。
Ndb_conflict_trans_conflict_commit_count
より (わずかに) 大きいか、等しい値にしてください。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
Ndb_conflict_trans_conflict_commit_count
NDB Cluster レプリケーションの競合解決で使用され、トランザクションの競合処理が必要になったあとにコミットされたエポックトランザクションの数を示します。
詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
delete-delete 競合検出を使用する場合、これは、削除操作が適用されるが、示された行が存在しない、検出された delete-delete 競合の数です。
-
操作によって行われた
NDB
カーネルへのラウンドトリップの回数を示します。 -
NDB
によって最後にコミットされたエポック。 -
この
NDB
クライアントによって最後にコミットされたエポック。 -
このサーバーが最後に起動されてから NDB メタデータ変更検出スレッドが MySQL データディクショナリに関する変更を検出した回数。
NDB 8.0.16 に追加されました。
-
NDB binlog スレッドが最後に再起動されてから、この SQL ノードで同期できなかったメタデータオブジェクトの数。
オブジェクトを除外すると、ユーザーが不一致を手動で修正するまで、自動同期化の対象とはみなされません。 これを行うには、
SHOW CREATE TABLE
、table
SELECT * FROM
などのステートメント、またはテーブル検出をトリガーするその他のステートメントでテーブルを使用します。table
NDB 8.0.18 に追加されました。 NDB 8.0.22 より前では、この変数は
Ndb_metadata_blacklist_size
という名前でした。 -
この SQL ノードが最後に再起動されてから同期された NDB メタデータオブジェクトの数。
NDB 8.0.18 に追加されました。
-
サーバーが NDB Cluster の一部である場合、この変数の値はクラスタ内のデータノードの数です。
サーバーが NDB Cluster の一部でない場合、この変数の値は 0 です。
-
データノードでの分散処理のために NDB カーネルにプッシュダウンされた結合の合計数。
注記プッシュダウン可能な
EXPLAIN
を使用してテストされた結合は、この数値に寄与します。 -
NDB カーネルにプッシュダウンされ、処理できなかった結合の数。
-
NDB
に正常にプッシュダウンされ、実行された結合の数。 -
プッシュダウンされた結合によって NDB カーネルから mysqld に返された行の数。
注記NDB
にプッシュダウンできる結合でEXPLAIN
を実行しても、この数値には追加されません。 -
この変数は、NDB Cluster が最後に起動されてから、
NDBCLUSTER
がパーティションプルーニングを使用できるようになったNDBCLUSTER
によって実行されたスキャンの数を保持します。この変数を
Ndb_scan_count
とともに使用すると、単一のテーブルパーティションにスキャンをプルーニングするサーバーの機能を最大化して、単一のデータノードのみを含むスキーマ設計で役立ちます。 -
Ndb_replica_max_replicated_epoch
このレプリカで最後にコミットされたエポック。 この値は
Ndb_conflict_last_conflict_epoch
と比較できます。Ndb_replica_max_replicated_epoch
がこの値より大きい場合、競合はまだ検出されていません。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
この変数は、NDB Cluster が最後に起動されてから
NDBCLUSTER
によって実行されたスキャンの合計数を保持します。 -
Ndb_slave_max_replicated_epoch
注記NDB 8.0.23 では非推奨です。代わりに
Ndb_slave_max_replicated_epoch
を使用してください。このレプリカで最後にコミットされたエポック。 この値は
Ndb_conflict_last_conflict_epoch
と比較できます。Ndb_slave_max_replicated_epoch
がこの値より大きい場合、競合はまだ検出されていません。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
-
この MySQL Server が NDB クラスタに接続されている場合、この読み取り専用変数はクラスタシステム名を示します。 それ以外の場合、値は空の文字列です。
-
現在のセッションで開始されたヒントを使用したトランザクションの数。
Ndb_api_trans_start_count_session
と比較して、ヒントを使用できるすべての NDB トランザクションの比率を取得します。 NDB 8.0.17 に追加されました。