This tool extracts current configuration information for data
nodes, SQL nodes, and API nodes from a cluster management node
(and possibly its config.ini
file).
Beginning with MySQL Cluster NDB 6.3.25 and MySQL Cluster NDB
7.0.6, it can also provide an offline dump (in text or XML
format) of all configuration parameters which can be used,
along with their default, maximum, and minimum values and
other information (see the discussion of the
--configinfo
and --xml
options later in this section).
The following table includes options that are specific to ndb_config. Additional descriptions follow the table. For options common to all MySQL Cluster programs, see Section 17.4.23, “Options Common to MySQL Cluster Programs”.
Table 17.12. ndb_config Command Line Options
Format | Description | Introduction | Deprecated | Removed |
---|---|---|---|---|
--configinfo | Dumps information about all NDB configuration parameters in text format with default, maximum, and minimum values. Use with --xml to obtain XML output. | 5.1.34-ndb-7.0.6 | ||
--connections | Print connection information only | |||
--fields=string | Field separator | |||
--host=name | Specify host | |||
--mycnf | Read configuration data from my.cnf file | |||
--nodeid | Get configuration of node with this ID | |||
--nodes | Print node information only | |||
Short form for --ndb-connectstring | 5.1.12 | |||
--config-file=path | Set the path to config.ini file | |||
--query=string | One or more query options (attributes) | |||
--rows=string | Row separator | |||
--type=name | Specify node type | |||
--configinfo --xml | Use with --configinfo to obtain a dump of all NDB configuration parameters in XML format with default, maximum, and minimum values. | 5.1.34-ndb-7.0.6 |
Command-Line Format | --help |
Causes ndb_config to print a list of available options, and then exit.
Command-Line Format | -V |
Causes ndb_config to print a version information string, and then exit.
--ndb-connectstring=
connect_string
Command-Line Format | --ndb-connectstring=name |
|
Permitted Values | ||
Type | string |
|
Default | localhost:1186 |
Specifies the connectstring to use in connecting to the
management server. The format for the connectstring is the
same as described in
Section 17.3.2.3, “The MySQL Cluster Connectstring”, and
defaults to localhost:1186
.
The use of -c
as a short version for this
option is supported for ndb_config
beginning with MySQL 5.1.12.
Gives 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_config is invoked, then an absolute
path must be used.
--query=
,
query-options
-q
query-options
Command-Line Format | --query=string |
|
Permitted Values | ||
Type | string |
|
Default |
|
This 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,datamemory
would return the node ID, node type,
DataMemory
, and
IndexMemory
for each node.
If 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.
Command-Line Format | --host=name |
|
Permitted Values | ||
Type | string |
|
Default |
|
Specifies the host name of the node for which configuration information is to be obtained.
--id=
,
node_id
--nodeid=
node_id
Used to specify the node ID of the node for which configuration information is to be obtained.
Command-Line Format | --nodes |
|
Permitted Values | ||
Type | boolean |
|
Default | FALSE |
(Tells ndb_config to 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.)
Command-Line Format | --type=name |
|
Permitted Values | ||
Type | enumeration |
|
Default |
|
|
Valid Values |
ndbd , mysqld , ndb_mgmd
|
Filters results so that only configuration values applying
to nodes of the specified
node_type
(ndbd
, mysqld
, or
ndb_mgmd
) are returned.
--fields=
,
delimiter
-f
delimiter
Command-Line Format | --fields=string |
|
Permitted Values | ||
Type | string |
|
Default |
|
Specifies a delimiter
string
used to separate the fields in the result. The default is
“,
” (the comma character).
If the delimiter
contains
spaces or escapes (such as \n
for the
linefeed character), then it must be quoted.
--rows=
,
separator
-r
separator
Command-Line Format | --rows=string |
|
Permitted Values | ||
Type | string |
|
Default |
|
Specifies a separator
string
used to separate the rows in the result. The default is a
space character.
If the separator
contains
spaces or escapes (such as \n
for the
linefeed character), then it must be quoted.
The --configinfo
option, added in MySQL
Cluster NDB 6.3.25 and MySQL Cluster NDB 7.0.6, causes
ndb_config to dump a list of each MySQL
Cluster configuration parameter supported by the MySQL
Cluster distribution of which
ndb_config is a part, including the
following information:
A brief description of each parameter's purpose, effects, and usage
The section of the config.ini
file where the parameter may be used
The parameter's data type or unit of measurement
Where applicable, the parameter's default, minimum, and maximum values
A brief description of the parameter's purpose, effects, and usage
MySQL Cluster release version and build information
By default, this output is in text format. Part of this output is shown here:
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)
…
Version Introduced | 5.1.34-ndb-7.0.6 | |
Command-Line Format | --configinfo --xml |
|
Permitted Values | ||
Type | boolean |
|
Default | false |
You can obtain the output of ndb_config
--configinfo
as XML by adding the
--xml
option (like the
--configinfo
option, available beginning
with MySQL Cluster NDB 6.3.25 and MySQL Cluster NDB
7.0.6). A portion of the resulting output is shown in this
example:
shell> ndb_config --configinfo --xml
<configvariables protocolversion="1" ndbversionstring="mysql-5.1.34 ndb-7.0.6"
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>
Normally, the XML output produced by
ndb_config
--configinfo
--xml
is
formatted using one line per element; we have added
extra whitespace in the previous example, as well as the
next one, for reasons of legibility. This should not
make any difference to applications using this output,
since most XML processors either ignore nonessential
whitespace as a matter of course, or can be instructed
to do so.
Beginning with MySQL Cluster NDB 6.3.29 and MySQL Cluster
NDB 7.0.10, the XML output also indicates when changing a
given parameter requires that nodes be restarted using the
--initial
option. This is shown by the
presence of an initial="true"
attribute
in the corresponding <param>
element. In addition (also beginning with MySQL Cluster
NDB 6.3.29 and MySQL Cluster NDB 7.0.10), the restart type
(system
or node
) is
also shown; if a given parameter requires a system
restart, this is indicated by the presence of a
restart="system"
attribute in the
corresponding <param>
element.
For example, the Diskless
parameter
requires a system initial restart, as shown here (with the
restart
and initial
attributes highlighted for visibility):
<param name="Diskless" comment="Run wo/ disk" type="bool" default="false"
restart="system" initial="true"/>
Currently, no initial
attribute is
included in the XML output for
<param>
elements corresponding to
parameters which do not require initial restarts; in other
words, initial="false"
is the default,
and the value false
should be assumed
if the attribute is not present. Similarly, the default
restart type is node
(that is, an
online or “rolling” restart of the cluster),
but the restart
attribute is included
only if the restart type is system
(meaning that all cluster nodes must be shut down at the
same time, then restarted).
The --xml
option can be used only with
the --configinfo
option. Using
--xml
without
--configinfo
fails with an error.
Unlike the options used with this program to obtain
current configuration data, --configinfo
and --xml
use information obtained from
the MySQL Cluster sources when
ndb_config was compiled. For this
reason, no connection to a running MySQL Cluster or access
to a config.ini
or
my.cnf
file is required for these two
options.
Combining other ndb_config options
(such as --query
or
--type
) with
--configinfo
or --xml
is
not supported. If you attempt to do so, the usual
(current) result is that all other options besides
--configinfo
or --xml
are simply ignored. However, this behavior is not
guaranteed and is subject to change at any time. In
addition, since ndb_config when used
with the --configinfo
option does not
access the MySQL Cluster or read any files, trying to
specify additional options such as
--ndb-connectstring
or
--config-file
with
--configinfo
serves no purpose.
Examples:
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.
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
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.
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.
User Comments
Add your own comment.