ndb_config1
Extract ndb configuration information
Usage
ndb_config options
Overview
This tool extracts configuration information for data nodes, SQL nodes, and API nodes from a cluster management node (and possibly its config.ini file).
Usage:
ndb_config options
The options available for this utility differ somewhat from those used with the other utilities, and so are listed in their entirety in the next section, followed by some examples.
Options:
- •
-
--usage,--help, or-?Causes
ndb_configto print a list of available options, and then exit.
- •
-
--version,-VCauses
ndb_configto print a version information string, and then exit.
- •
-
--ndb-connectstring=connect_stringSpecifies the connectstring to use in connecting to the management server. The format for the connectstring is the same as described in Section 3.4.2, “The Cluster Connectstring”, and defaults to localhost:1186.
NoteThe use of-cas a short version for this option is supported forndb_configbeginning with MySQL 5.0.29.
- •
-
--config-file=path-to-fileGives the path to the management server's configuration file (config.ini). This may be a relative or absolute path. If the management node resides on a different host from the one on which
ndb_configis invoked, then an absolute path must be used.
- •
-
--query=query-options,-qquery-optionsThis is a comma-delimited list of query options — that is, a list of one or more node attributes to be returned. These include id (node ID), type (node type — that is, ndbd, mysqld, or ndb_mgmd), and any configuration parameters whose values are to be obtained.
For example,
--query=id,type,indexmemory,datamemorywould return the node ID, node type, DataMemory, and IndexMemory for each node.NoteIf a given parameter is not applicable to a certain type of node, than an empty string is returned for the corresponding value. See the examples later in this section for more information.
- •
-
--host=hostnameSpecifies the hostname of the node for which configuration information is to be obtained.
- •
-
--id=node_id,--nodeid=node_idUsed to specify the node ID of the node for which configuration information is to be obtained.
- •
-
--nodes(Tells
ndb_configto print information from parameters defined in [ndbd] sections only. Currently, using this option has no affect, since these are the only values checked, but it may become possible in future to query parameters set in [tcp] and other sections of cluster configuration files.)
- •
-
--type=node_typeFilters results so that only configuration values applying to nodes of the specified node_type (ndbd, mysqld, or ndb_mgmd) are returned.
- •
-
--fields=delimiter,-fdelimiterSpecifies a delimiter string used to separate the fields in the result. The default is “,” (the comma character).
NoteIf the delimiter contains spaces or escapes (such as \n for the linefeed character), then it must be quoted.
- •
-
--rows=separator,-rseparatorSpecifies a separator string used to separate the rows in the result. The default is a space character.
NoteIf the separator contains spaces or escapes (such as \n for the linefeed character), then it must be quoted.
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
--fieldsoptions to separate the ID and type of each node with a colon character (:), and the--rowsoptions to place the values for each node on a new line in the output.
- 2.
-
To produce a connectstring 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_configchecks only data nodes (using the--typeoption), and shows the values for each node's ID and hostname, 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
-fand-rfor setting the field delimiter and row separator, respectively.
- 4.
-
To exclude results from any host except one in particular, use the
--hostoption: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
-qto determine the attributes to be queried.Similarly, you can limit results to a node with a specific ID using the
--idor--nodeidoption.