ndb_config(1) MySQL Database System ndb_config(1)
NAME
ndb_config - extract MySQL Cluster configuration information
SYNOPSIS
ndb_config options
DESCRIPTION
This tool extracts current configuration information for data nodes,
SQL nodes, and API nodes from one of a number of sources: a MySQL
Cluster management node, or its config.ini or my.cnf file. By default,
the management node is the source for the configuration data; to
override the default, execute ndb_config with the --config-file or
--mycnf option. It is also possible to use a data node as the source by
specifying its node ID with --config_from_node=node_id-
ndb_config can also provide an offline dump of all configuration
parameters which can be used, along with their default, maximum, and
minimum values and other information. The dump can be produced in
either text or XML format; for more information, see the discussion of
the --configinfo and --xml options later in this section).
You can filter the results by section (DB, SYSTEM, or CONNECTIONS)
using one of the options --nodes, --system, or --connections.
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 16.4.2, "Options Common to MySQL
Cluster Programs".
o --usage, --help, or -?
+-------------+-----------+
|Command-Line | --help |
|Format | |
+-------------+-----------+
| | --usage |
+-------------+-----------+
| | -? |
+-------------+-----------+
Causes ndb_config to print a list of available options, and then
exit.
o --config_from_node=#
+-------------+----------------------+
|Command-Line | --config_from_node=# |
|Format | |
+-------------+----------------------+
| | Permitted Values |
| +----------+-----------+
| | Type | numeric |
| +----------+-----------+
| | Default | none |
| +----------+-----------+
| | Range | 1 .. 48 |
+-------------+----------+-----------+
Obtain the cluster's configuration data from the data node that has
this ID.
If the node having this ID is not a data node, ndb_config fails
with an error. (To obtain configuration data from the management
node instead, simply omit this option.)
o --version, -V
+-------------+-----------+
|Command-Line | --version |
|Format | |
+-------------+-----------+
| | -V |
+-------------+-----------+
Causes ndb_config to print a version information string, and then
exit.
o --ndb-connectstring=connect_string, -c connect_string
Specifies the connectstring to use in connecting to the management
server. The format for the connectstring is the same as described
in Section 16.3.2.3, "The MySQL Cluster Connectstring", and
defaults to localhost:1186.
o --config-file=path-to-file
+-------------+---------------------+
|Command-Line | --config-file=path |
|Format | |
+-------------+---------------------+
| | Permitted Values |
| +---------+-----------+
| | Type | file name |
| +---------+-----------+
| | Default | |
+-------------+---------+-----------+
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.
o --mycnf
+-------------+-------------------+
|Command-Line | --mycnf |
|Format | |
+-------------+-------------------+
| | Permitted Values |
| +---------+---------+
| | Type | boolean |
| +---------+---------+
| | Default | FALSE |
+-------------+---------+---------+
Read configuration data from the my.cnf file.
o --query=query-options, -q query-options
+-------------+------------------+
|Command-Line | --query=string |
|Format | |
+-------------+------------------+
| | -q |
+-------------+------------------+
| | 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 returns the
node ID, node type, DataMemory, and IndexMemory for each node.
Note
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.
o --host=hostname
+-------------+------------------+
|Command-Line | --host=name |
|Format | |
+-------------+------------------+
| | Permitted Values |
| +---------+--------+
| | Type | string |
| +---------+--------+
| | Default | |
+-------------+---------+--------+
Specifies the host name of the node for which configuration
information is to be obtained.
Note
While the hostname localhost usually resolves to the IP address
127.0.0.1, this may not necessarily be true for all operating
platforms and configurations. This means that it is possible,
when localhost is used in config.ini, for ndb_config
--host=localhost to fail if ndb_config is run on a different
host where localhost resolves to a different address (for
example, on some versions of SUSE Linux, this is 127.0.0.2). In
general, for best results, you should use numeric IP addresses
for all MySQL Cluster configuration values relating to hosts,
or verify that all MySQL Cluster hosts handle localhost in the
same fashion.
o --id=node_id
--nodeid=node_id
Either of these options can be used to specify the node ID of the
node for which configuration information is to be obtained.
--nodeid is the preferred form.
o --nodes
+-------------+-------------------+
|Command-Line | --nodes |
|Format | |
+-------------+-------------------+
| | Permitted Values |
| +---------+---------+
| | Type | boolean |
| +---------+---------+
| | Default | FALSE |
+-------------+---------+---------+
Tells ndb_config to print information from parameters defined in DB
sections only. This option cannot be used together with
--connections or --system.
o --connections
+-------------+-------------------+
|Command-Line | --connections |
|Format | |
+-------------+-------------------+
| | Permitted Values |
| +---------+---------+
| | Type | boolean |
| +---------+---------+
| | Default | FALSE |
+-------------+---------+---------+
Tells ndb_config to print CONNECTIONS information only. This option
cannot be used together with --nodes or --system.
o --system
+-------------+-------------------+
|Command-Line | --system |
|Format | |
+-------------+-------------------+
| | Permitted Values |
| +---------+---------+
| | Type | boolean |
| +---------+---------+
| | Default | FALSE |
+-------------+---------+---------+
Tells ndb_config to print SYSTEM information only.
This option cannot be used together with the --nodes or --system
options.
o --type=node_type
+-------------+----------------------------+
|Command-Line | --type=name |
|Format | |
+-------------+----------------------------+
| | 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.
o --fields=delimiter, -f delimiter
+-------------+------------------+
|Command-Line | --fields=string |
|Format | |
+-------------+------------------+
| | -f |
+-------------+------------------+
| | Permitted Values |
| +---------+--------+
| | Type | string |
| +---------+--------+
| | Default | |
+-------------+---------+--------+
Specifies a delimiter string used to separate the fields in the
result. The default is "," (the comma character).
Note
If the delimiter contains spaces or escapes (such as \n for the
linefeed character), then it must be quoted.
o --rows=separator, -r separator
+-------------+------------------+
|Command-Line | --rows=string |
|Format | |
+-------------+------------------+
| | -r |
+-------------+------------------+
| | Permitted Values |
| +---------+--------+
| | Type | string |
| +---------+--------+
| | Default | |
+-------------+---------+--------+
Specifies a separator string used to separate the rows in the
result. The default is a space character.
Note
If the separator contains spaces or escapes (such as \n for the
linefeed character), then it must be quoted.
o --configinfo
The --configinfo option 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:
o A brief description of each parameter's purpose, effects, and
usage
o The section of the config.ini file where the parameter may be
used
o The parameter's data type or unit of measurement
o Where applicable, the parameter's default, minimum, and maximum
values
o A brief description of the parameter's purpose, effects, and
usage
o 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)
...
--configinfo --xml
+-------------+--------------------+
|Command-Line | --configinfo --xml |
|Format | |
+-------------+--------------------+
| | Permitted Values |
| +----------+---------+
| | Type |boolean |
| +----------+---------+
| | Default |false |
+-------------+----------+---------+
You can obtain the output of ndb_config --configinfo as XML by
adding the --xml option. 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>
Note
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.
The XML output also indicates when changing a given parameter
requires that data 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,
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, changing the value set for 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).
Important
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. Currently, if you
attempt to do so, the usual 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
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 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_config checks only data nodes (using the
--type option), and shows the values for each node's ID and
host name, as well as the values set for 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.
COPYRIGHT
Copyright (C) 1997, 2012, Oracle and/or its affiliates. All rights
reserved.
This documentation is free software; you can redistribute it and/or
modify it only under the terms of the GNU General Public License as
published by the Free Software Foundation; version 2 of the License.
This documentation is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License along
with the program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see
http://www.gnu.org/licenses/.
SEE ALSO
For more information, please refer to the MySQL Reference Manual, which
may already be installed locally and which is also available online at
http://dev.mysql.com/doc/.
AUTHOR
Oracle Corporation (http://dev.mysql.com/).
MySQL 5.5 03/02/2012 ndb_config(1)
mysql 5.5.22 - Generated Fri Apr 6 12:04:40 CDT 2012
