このページは機械翻訳したものです。
このセクションでは、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有効な値 OFFFORCENDB 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 デフォルト値 ONALTER 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有効な値 FIXEDDYNAMIC新しいテーブルのデフォルトの
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有効な値 LINHASHKEYHASHNDBテーブルのデフォルトの分配方法を制御します。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 デフォルト値 OFFlog_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 デフォルト値 OFFlog_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最大値 63NDB 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有効な値 ONOFFFORCEndbinfo情報データベースのプラグインを有効にします。 デフォルトでは、NDBCLUSTERが有効になっている場合は常に ON です。--ndb-optimization-delay=millisecondsコマンド行形式 --ndb-optimization-delay=#システム変数 ndb_optimization_delayスコープ グローバル 動的 はい SET_VARヒントの適用いいえ 型 Integer デフォルト値 10最小値 0最大値 100000NDBテーブルに対するOPTIMIZE TABLEステートメントによる行セット間で待機するミリ秒数を設定します。 デフォルトは 10 です。--ndb-transid-mysql-connection-map=stateコマンド行形式 --ndb-transid-mysql-connection-map[=state]型 列挙 デフォルト値 ON有効な値 ONOFFFORCEINFORMATION_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-ndbclusterNDBCLUSTERストレージエンジンを無効にします。 これは、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_INCREMENTID の数にのみ影響します。特定のステートメント内では、一度に少なくとも 32 個の ID が取得されます。重要この変数は、
INSERT ... SELECTを使用して実行される挿入には影響しません。コマンド行形式 --ndb-cache-check-time=#非推奨 はい システム変数 ndb_cache_check_timeスコープ グローバル 動的 はい SET_VARヒントの適用いいえ 型 Integer デフォルト値 0MySQL クエリーキャッシュによる 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有効な値 NONEPRIMARYSECONDARYPASS循環 (「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最大値 11 に設定した場合は、リンガリングしているシェアがないことを確認します。 デバッグビルドでのみ使用できます。
NDB 8.0.13 に追加されました。
コマンド行形式 --ndb-default-column-format={FIXED|DYNAMIC}システム変数 ndb_default_column_formatスコープ グローバル 動的 はい SET_VARヒントの適用いいえ 型 列挙 デフォルト値 FIXED有効な値 FIXEDDYNAMIC新しいテーブルのデフォルトの
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有効な値 LINHASHKEYHASHNDBテーブルのデフォルトの分配方法を制御します。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最大値 4294967295NDB 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_enable1000 ms 0/4G loop_idleアイドル時のスリープ時間 1000 ms 0/4G loop_busy追加作業が待機しているときのスリープ時間 100 ms 0/4G update_batch1 0/4G read_batch4 1/4G idle_batch32 1/4G check_batch8 1/4G check_delay新しい統計をチェックする頻度 10 m 1/4G delete_batch8 0/4G clean_delay1 m 0/4G error_batch4 1/4G error_delay1 m 1/4G evict_batch8 1/4G evict_delayLRU キャッシュを削除します (読み取り時から) 1 m 0/4G cache_limitこのmysqld がキャッシュされたインデックス統計のために使用するメモリーの最大量 (バイト単位)。これを超えたときにキャッシュをクリーンアップします。 32 M 0/4G cache_lowpct90 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 以降で解除されています。 比較するカラムに対する操作の結果は、カラム自体と同じ型になる必要があります。constantNDB 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: ALLpossible_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: refpossible_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_refpossible_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: refpossible_keys: PRIMARY,emp_no key: emp_no key_len: 4 ref: employees.de.emp_no rows: 19 Extra: Child of 'e' in pushed join@14 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) ONNDBテーブルの更新がバイナリログに書き込まれるようになります。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 デフォルト値 ONNDB 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 デフォルト値 trueNDBへの接続時にスキーマ分散テーブルのアップグレードを許可します。 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 デフォルト値 OFFNDBが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有効な値 NONEPRIMARYSECONDARYPASSNDB 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 デフォルト値 OFFSELECT COUNT(*)クエリーでこのタイプのクエリーの高速化を計画するときに、NDBによりレコードのカウントが強制的に使用されます。 デフォルト値はOFFで、クエリー全体が高速化されます。コマンド行形式 --ndb-use-transactions[={OFF|ON}]システム変数 ndb_use_transactionsスコープ グローバル、セッション 動的 はい SET_VARヒントの適用いいえ 型 Boolean デフォルト値 ONNDBのトランザクションサポートを無効にするには、この変数の値を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 デフォルト値 OFFNDB 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ヒントの適用いいえ 型 文字列 デフォルト値 ndbinfoNDB情報データベースに使用される名前を示します。デフォルトは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 デフォルト値 OFFndbinfoデータベースをオフラインモードにします。オフラインモードでは、テーブルやビューが実際には存在しない場合や、存在するがNDBでの定義が異なる場合でも、テーブルやビューを開くことができます。 このようなテーブル (またはビュー) からは、行は返されません。コマンド行形式 --ndbinfo-show-hidden[={OFF|ON}]システム変数 ndbinfo_show_hiddenスコープ グローバル、セッション 動的 はい SET_VARヒントの適用いいえ 型 Boolean デフォルト値 OFF有効な値 ONOFFndbinfoデータベースのベースとなる内部テーブルが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_injectorNDB 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_injectorNDB バイナリログインジェクタスレッドによって受信された、行変更イベント以外のイベントの数。
この変数は、
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_injectorNDB 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 ノード) によって作成された主キー、一意キー、またはスキャン操作によって読み取られたすべての行が含まれます。
SELECTCOUNT(*)クエリーによって読み取られる行に関しては、この値が完全に正確でない場合があることに注意してください。この場合、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_replicaDDL リクエスト、新しいエポック、トランザクションレコードの清算など、メタデータベースのシグナルを待機しているこのレプリカによってスレッドがブロックされた回数。
この変数は、
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_countNDB Cluster レプリケーション競合解決を使用している場合、これは、実行中にエラーが発生したためにセカンダリに適用されなかった反映された操作の数です。
詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
Ndb_conflict_reflected_op_prepare_countNDB 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_countNDB Cluster レプリケーション競合解決で使用されるこのステータス変数は、前回の再起動以降に、特定のmysqld 上のトランザクション競合関数によって直接競合していることが検出された行の数を示します。
現在、NDB Cluster でサポートされているトランザクション競合検出関数は NDB$EPOCH_TRANS() のみであるため、このステータス変数は事実上
Ndb_conflict_fn_epoch_transと同じです。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
Ndb_conflict_trans_row_reject_countNDB Cluster レプリケーション競合解決で使用されるこのステータス変数は、トランザクション競合検出関数によって競合していると判断されたために再割り当てされた行の合計数を示します。 これには、
Ndb_conflict_trans_row_conflict_countだけでなく、競合するトランザクションに含まれる行や依存する行も含まれます。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
Ndb_conflict_trans_reject_countNDB Cluster レプリケーション競合解決で使用されるこのステータス変数は、トランザクション競合検出関数によって競合していることが検出されたトランザクションの数を示します。
詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
Ndb_conflict_trans_detect_iter_countNDB Cluster レプリケーション競合解決で使用され、エポックトランザクションのコミットに必要な内部反復の数を示します。
Ndb_conflict_trans_conflict_commit_countより (わずかに) 大きいか、等しい値にしてください。詳細は、セクション23.6.11「NDB Cluster レプリケーションの競合解決」を参照してください。
Ndb_conflict_trans_conflict_commit_countNDB 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、tableSELECT * FROMなどのステートメント、またはテーブル検出をトリガーするその他のステートメントでテーブルを使用します。tableNDB 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 に追加されました。