このツールは、いくつかのソース (MySQL Cluster 管理ノード、あるいは config.ini
ファイルまたは my.cnf
ファイル) のいずれかから、データノード、SQL ノード、および API ノードの現在の構成情報を抽出します。デフォルトでは、管理ノードが構成データのソースです。デフォルトをオーバーライドするには、--config-file
オプションまたは --mycnf
オプションを指定して ndb_config を実行します。--config_from_node=
にノード ID を指定することによって、データノードをソースとして使用することもできます。
node_id
ndb_config は、使用できるすべての構成パラメータ、およびそれらのデフォルト値、最大値、最小値、その他の情報のオフラインダンプを生成することもできます。このダンプはテキスト形式または XML 形式で生成できます。詳細は、このセクションで後述する --configinfo
および --xml
オプションの説明を参照してください)。
--nodes
、--system
、または --connections
のいずれかのオプションを使用すると、結果をセクション (DB
、SYSTEM
、または CONNECTIONS
) によってフィルタリングできます。
次の表には、ndb_config に固有のオプションが含まれています。追加説明が表のあとにあります。ほとんどの MySQL Cluster プログラム (ndb_config を含む) に共通するオプションについては、セクション18.4.27「MySQL Cluster プログラムに共通するオプション — MySQL Cluster プログラムに共通するオプション」を参照してください。
表 18.82 この表は、ndb_config プログラムのコマンド行オプションについて説明しています
形式 | 説明 | 追加または削除 |
---|---|---|
ノード情報 (DB セクション) のみを出力します。 |
すべての MySQL 5.6 ベースリリース |
|
CONNECTIONS セクション情報のみを出力します。--nodes オプションまたは --system オプションとともに使用することはできません。 |
すべての MySQL 5.6 ベースリリース |
|
1 つ以上のクエリーオプション (属性) |
すべての MySQL 5.6 ベースリリース |
|
ホストを指定します |
すべての MySQL 5.6 ベースリリース |
|
ノードタイプを指定します |
すべての MySQL 5.6 ベースリリース |
|
この ID のノードの構成を取得します |
すべての MySQL 5.6 ベースリリース |
|
フィールド区切り文字 |
すべての MySQL 5.6 ベースリリース |
|
行区切り文字 |
すべての MySQL 5.6 ベースリリース |
|
config.ini ファイルへのパスを設定します |
すべての MySQL 5.6 ベースリリース |
|
my.cnf ファイルから構成データを読み取ります |
すべての MySQL 5.6 ベースリリース |
|
--ndb-connectstring の短縮形 |
すべての MySQL 5.6 ベースリリース |
|
すべての NDB 構成パラメータに関する情報をデフォルト値、最大値、および最小値とともにテキスト形式でダンプします。XML 出力を取得するには、--xml とともに使用します。 |
すべての MySQL 5.6 ベースリリース |
|
すべての NDB 構成パラメータのダンプをデフォルト値、最大値、および最小値とともに XML 形式で取得するには、--configinfo に -xml を使用します。 |
すべての MySQL 5.6 ベースリリース |
|
SYSTEM セクション情報のみを出力します。--nodes オプションまたは --connections オプションとともに使用することはできません。 |
すべての MySQL 5.6 ベースリリース |
|
この ID のノード (データノードである必要があります) から構成データを取得します。 |
すべての MySQL 5.6 ベースリリース |
-
コマンド行形式 --help
--usage
ndb_config が使用可能なオプションのリストを出力してから終了します。
-
コマンド行形式 --config-from-node=#
型 数値 デフォルト none
最小値 1
最大値 48
この ID を持つデータノードからクラスタの構成データを取得します。
この ID を持つノードがデータノードではない場合、ndb_config はエラーで失敗します(代わりに、管理ノードから構成データを取得するには、単純にこのオプションを省略します)。
-
コマンド行形式 --version
ndb_config がバージョン情報文字列を出力してから終了します。
-
--ndb-connectstring=
、connect_string
-c
connect_string
コマンド行形式 --ndb-connectstring=connectstring
--connect-string=connectstring
型 文字列 デフォルト localhost:1186
管理サーバーに接続するために使用する接続文字列を指定します。この接続文字列の形式は、セクション18.3.2.3「MySQL Cluster の接続文字列」で説明したものと同じであり、デフォルトは
localhost:1186
です。 -
コマンド行形式 --config-file=path
型 ファイル名 デフォルト 管理サーバーの構成ファイル (
config.ini
) へのパスを指定します。これには相対パスまたは絶対パスを指定できます。ndb_config が呼び出されるホストと別のホストに管理ノードがある場合は、絶対パスを使用する必要があります。 -
コマンド行形式 --mycnf
型 ブール デフォルト FALSE
my.cnf
ファイルから構成データを読み取ります。 -
--query=
、query-options
-q
query-options
コマンド行形式 --query=string
型 文字列 デフォルト これは、クエリーオプションのカンマ区切りのリストです。つまり、1 つ以上の返されるノード属性のリストです。これらには、
id
(ノード ID)、タイプ (ノードタイプ。つまり、ndbd
、mysqld
、またはndb_mgmd
)、および値が取得される構成パラメータが含まれます。たとえば、
--query=id,type,indexmemory,datamemory
は、各ノードのノード ID、ノードタイプ、DataMemory
、およびIndexMemory
を返します。注記指定したパラメータが特定のタイプのノードに当てはまらない場合、対応する値には空の文字列が返されます。詳細はこのセクションで後述する例を参照してください。
-
コマンド行形式 --host=name
型 文字列 デフォルト 構成情報を取得するノードのホスト名を指定します。
注記ホスト名
localhost
は通常、IP アドレス127.0.0.1
に解決されますが、これはすべてのオペレーティングプラットフォームおよび構成でそうなるとはかぎりません。これは、config.ini
にlocalhost
が使用されて、localhost
が別のアドレスに解決される (たとえば、一部のバージョンの SUSE Linux では、これは127.0.0.2
です) 別のホストで ndb_config が実行されている場合、ndb_config--host=localhost
が失敗することがあることを意味します。一般的に最適な結果を得るには、ホストに関連するすべての MySQL Cluster 構成値に数値 IP アドレスを使用するか、すべての MySQL Cluster ホストがlocalhost
を同様に扱っていることを確認してください。 -
コマンド行形式 --ndb-nodeid=#
型 数値 デフォルト 0
構成情報を取得するノードのノード ID を指定する場合は、これらのオプションのいずれかを使用できます。推奨される形式は
--nodeid
です。 -
コマンド行形式 --nodes
型 ブール デフォルト FALSE
DB
セクションに定義されているパラメータの情報のみを出力するように、ndb_config に通知します。このオプションは、--connections
または--system
と一緒に使用できません。 -
コマンド行形式 --connections
型 ブール デフォルト FALSE
CONNECTIONS
の情報のみを出力するように、ndb_config に通知します。このオプションは、--nodes
または--system
と一緒に使用できません。 -
コマンド行形式 --system
型 ブール デフォルト FALSE
SYSTEM
の情報のみを出力するように ndb_config に通知します。このオプションは、
--nodes
オプションまたは--system
オプションと一緒に使用できません。 -
コマンド行形式 --type=name
型 列挙 デフォルト [none]
有効な値 ndbd
mysqld
ndb_mgmd
指定した
node_type
のノード (ndbd
、mysqld
、またはndb_mgmd
) に該当する構成値のみが返されるように、結果をフィルタリングします。 -
--fields=
、delimiter
-f
delimiter
コマンド行形式 --fields=string
型 文字列 デフォルト 結果のフィールドを区切るために使用される
delimiter
文字列を指定します。デフォルトは 「,
」 (カンマ) です。注記delimiter
にスペースまたはエスケープ (改行文字の\n
など) が含まれている場合は、引用符で囲む必要があります。 -
コマンド行形式 --rows=string
型 文字列 デフォルト 結果の行を区切るために使用される
separator
文字列を指定します。デフォルトはスペース文字です。注記separator
にスペースまたはエスケープ (改行文字の\n
など) が含まれている場合は、引用符で囲む必要があります。 -
--configinfo
オプションを指定すると、ndb_config が属する MySQL Cluster 配布でサポートされる次の情報を含む各 MySQL Cluster 構成パラメータのリストを ndb_config がダンプします。各パラメータの目的、効果、および使用方法の簡単な説明
パラメータを使用できる
config.ini
ファイルのセクションパラメータのデータ型または単位
該当する場合、パラメータのデフォルト値、最小値、および最大値
パラメータの目的、効果、および使用方法についての簡単な説明
MySQL Cluster のリリースバージョンおよびビルド情報
デフォルトでは、この出力はテキスト形式です。この出力の一部を次に示します。
shell> ndb_config --configinfo ****** SYSTEM ****** Name (String) Name of system (NDB Cluster) MANDATORY PrimaryMGMNode (Non-negative Integer) Node id of Primary ndb_mgmd(MGM) node Default: 0 (Min: 0, Max: 4294967039) ConfigGenerationNumber (Non-negative Integer) Configuration generation number Default: 0 (Min: 0, Max: 4294967039) ****** DB ****** MaxNoOfSubscriptions (Non-negative Integer) Max no of subscriptions (default 0 == MaxNoOfTables) Default: 0 (Min: 0, Max: 4294967039) MaxNoOfSubscribers (Non-negative Integer) Max no of subscribers (default 0 == 2 * MaxNoOfTables) Default: 0 (Min: 0, Max: 4294967039) …
コマンド行形式 --configinfo --xml
型 ブール デフォルト false
--xml
オプションを追加することによって、ndb_config--configinfo
の出力を XML として取得できます。出力結果の一部を次の例に示します。shell> ndb_config --configinfo --xml <configvariables protocolversion="1" ndbversionstring="5.6.22-ndb-7.3.9" ndbversion="458758" ndbversionmajor="7" ndbversionminor="0" ndbversionbuild="6"> <section name="SYSTEM"> <param name="Name" comment="Name of system (NDB Cluster)" type="string" mandatory="true"/> <param name="PrimaryMGMNode" comment="Node id of Primary ndb_mgmd(MGM) node" type="unsigned" default="0" min="0" max="4294967039"/> <param name="ConfigGenerationNumber" comment="Configuration generation number" type="unsigned" default="0" min="0" max="4294967039"/> </section> <section name="NDBD"> <param name="MaxNoOfSubscriptions" comment="Max no of subscriptions (default 0 == MaxNoOfTables)" type="unsigned" default="0" min="0" max="4294967039"/> <param name="MaxNoOfSubscribers" comment="Max no of subscribers (default 0 == 2 * MaxNoOfTables)" type="unsigned" default="0" min="0" max="4294967039"/> … </section> … </configvariables>
注記通常、ndb_config
--configinfo
--xml
によって生成される XML 出力では 1 行に 1 要素の形式が使用されますが、上記の例および次の例では読みやすくするために空白を追加しています。ほとんどの XML プロセッサでは通常の処理として不要な空白が無視されるか、無視するように指示できるため、これによってこの出力を使用するアプリケーションに違いは生じないはずです。この XML 出力は、特定のパラメータが変更されたときに、
--initial
オプションを使用してデータノードを再起動する必要があることも示しています。これは、対応する<param>
要素にinitial="true"
属性が表示されることによって示されます。また、再起動タイプ (system
またはnode
) も示されます。これは、特定のパラメータでシステムの再起動が要求される場合に、対応する<param>
要素にrestart="system"
属性が表示されることによって示されます。たとえば、Diskless
パラメータの値セットを変更すると、次に示されているようにシステムの初期再起動が必要となります (restart
属性およびinitial
属性が見やすいように強調表示されています)。<param name="Diskless" comment="Run wo/ disk" type="bool" default="false" restart="system" initial="true"/>
現在、初期再起動が必要ないパラメータに対応する
<param>
要素の XML 出力には、initial
属性は表示されません。言い換えると、initial="false"
がデフォルトであり、属性が表示されていない場合は値false
を想定してください。同様に、デフォルトの再起動タイプはnode
(つまり、クラスタのオンラインまたは「ローリング」再起動) ですが、restart
属性は再起動タイプがsystem
(すべてのクラスタノードを同時にシャットダウンしてから再起動する必要があることを意味します) である場合にのみ表示されます。重要--xml
オプションは--configinfo
オプションを指定した場合にのみ使用できます。--configinfo
を指定せずに--xml
を使用すると、エラーで失敗します。現在の構成データを取得するためにこのプログラムで使用されるオプションと異なり、ndb_config がコンパイルされた場合、
--configinfo
および--xml
は MySQL Cluster ソースから取得される情報を使用します。このため、これらの 2 つのオプションの場合、実行されている MySQL Cluster に接続したり、config.ini
ファイルまたはmy.cnf
ファイルにアクセスしたりする必要はありません。ほかの ndb_config オプション (
--query
、--type
など) を--configinfo
または--xml
と組み合わせることはサポートされていません。現在、そうしようとすると通常、--configinfo
または--xml
以外のすべてのオプションが単に無視されます。ただし、この動作は保証されず、今後変更されることがあります。また、--configinfo
オプションを指定して使用した場合、ndb_config は MySQL Cluster にアクセスせず、どのファイルも読み取らないため、--ndb-connectstring
、--config-file
などの追加オプションを--configinfo
と一緒に指定しようとしても意味はありません。
例
-
クラスタのノード ID および各ノードのタイプを取得するには、次のようにします。
shell> ./ndb_config --query=id,type --fields=':' --rows='\n' 1:ndbd 2:ndbd 3:ndbd 4:ndbd 5:ndb_mgmd 6:mysqld 7:mysqld 8:mysqld 9:mysqld
この例では、
--fields
オプションを使用して ID および各ノードのタイプをコロン (:
) で区切り、--rows
オプションを使用して各ノードの値を新しい行に出力しています。 -
データノード、SQL ノード、および API ノードが管理サーバーに接続するために使用できる接続文字列を生成するには、次のようにします。
shell> ./ndb_config --config-file=usr/local/mysql/cluster-data/config.ini \ --query=hostname,portnumber --fields=: --rows=, --type=ndb_mgmd 192.168.0.179:1186
-
この ndb_config 呼び出しでは、データノードのみがチェックされ (
--type
オプションを使用しています)、各ノードの ID とホスト名の値、およびDataMemory
、IndexMemory
、DataDir
パラメータの値セットが表示されます。shell> ./ndb_config --type=ndbd --query=id,host,datamemory,indexmemory,datadir -f ' : ' -r '\n' 1 : 192.168.0.193 : 83886080 : 18874368 : /usr/local/mysql/cluster-data 2 : 192.168.0.112 : 83886080 : 18874368 : /usr/local/mysql/cluster-data 3 : 192.168.0.176 : 83886080 : 18874368 : /usr/local/mysql/cluster-data 4 : 192.168.0.119 : 83886080 : 18874368 : /usr/local/mysql/cluster-data
この例では、短いオプション
-f
および-r
をフィールド区切り文字および行区切り文字の設定にそれぞれ使用しました。 -
特定の 1 つのホスト以外のホストを結果から除外するには、
--host
オプションを使用します。shell> ./ndb_config --host=192.168.0.176 -f : -r '\n' -q id,type 3:ndbd 5:ndb_mgmd
また、この例では、短い形式
-q
を使用して、問い合わせる属性を指定しています。同様に、特定の ID のノードに結果を制限するには、
--id
オプションまたは--nodeid
オプションを使用します。