17.4.4 ndb_config — Extract MySQL Cluster Configuration Information

This tool extracts configuration information for data nodes, SQL nodes, and API nodes from a cluster management node (and possibly its config.ini file).

The following table includes options that are specific to ndb_config. Additional descriptions follow the table. For options common to most MySQL Cluster programs (including ndb_config), see Section 17.4.20, “Options Common to MySQL Cluster Programs — Options Common to MySQL Cluster Programs”.

Table 17.12 ndb_config Options and Variables: MySQL 5.0

FormatDescriptionAdded / Removed

--nodes

Print node information (DB section) only.

All MySQL 5.0 based releases

--query=string,

-q

One or more query options (attributes)

All MySQL 5.0 based releases

--host=name

Specify host

All MySQL 5.0 based releases

--type=name

Specify node type

All MySQL 5.0 based releases

--nodeid,

--id

Get configuration of node with this ID

All MySQL 5.0 based releases

--fields=string,

-f

Field separator

All MySQL 5.0 based releases

--rows=string,

-r

Row separator

All MySQL 5.0 based releases

--config-file=path

Set the path to config.ini file

All MySQL 5.0 based releases

--mycnf

Read configuration data from my.cnf file

All MySQL 5.0 based releases

-c

Short form for --ndb-connectstring

ADDED: 5.0.33


Table 17.13 ndb_config Command Line Options

FormatDescriptionIntroduced
--config-file=pathSet the path to config.ini file 
--fields=stringField separator 
--host=nameSpecify host 
--mycnfRead configuration data from my.cnf file 
--nodeidGet configuration of node with this ID 
--nodesPrint node information (DB section) only. 
-cShort form for --ndb-connectstring5.0.33
--query=stringOne or more query options (attributes) 
--rows=stringRow separator 
--type=nameSpecify node type 

Examples

  1. To obtain the node ID and type of each node in the cluster:

    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
    

    In this example, we used the --fields options to separate the ID and type of each node with a colon character (:), and the --rows options to place the values for each node on a new line in the output.

  2. To produce a connection string that can be used by data, SQL, and API nodes to connect to the management server:

    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
    
  3. This invocation of ndb_config checks only data nodes (using the --type option), and shows the values for each node's ID and host name, and its DataMemory, IndexMemory, and DataDir parameters:

    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
    

    In this example, we used the short options -f and -r for setting the field delimiter and row separator, respectively.

  4. To exclude results from any host except one in particular, use the --host option:

    shell> ./ndb_config --host=192.168.0.176 -f : -r '\n' -q id,type
    3:ndbd
    5:ndb_mgmd
    

    In this example, we also used the short form -q to determine the attributes to be queried.

    Similarly, you can limit results to a node with a specific ID using the --id or --nodeid option.