ndb_mgmd(8) MySQL Database System ndb_mgmd(8)
NAME
ndb_mgmd - the MySQL Cluster management server daemon
SYNOPSIS
ndb_mgmd options
DESCRIPTION
The management server is the process that reads the cluster
configuration file and distributes this information to all nodes in the
cluster that request it. It also maintains a log of cluster activities.
Management clients can connect to the management server and check the
cluster's status.
The following table includes options that are specific to the MySQL
Cluster management server program ndb_mgmd. 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 --bind-address=host[:port]
+-------------+------------------+
|Command-Line | --bind-address |
|Format | |
+-------------+------------------+
| | Permitted Values |
| +---------+--------+
| | Type | string |
| +---------+--------+
| | Default | [none] |
+-------------+---------+--------+
When specified, this option limits management server connections by
management clients to clients at the specified host name or IP
address (and possibly port, if this is also specified). In such
cases, a management client attempting to connect to the management
server from any other address fails with the error Unable to setup
port: host:port!
If the port is not specified, the management client attempts to use
port 1186.
o --no-nodeid-checks
+-------------+--------------------+
|Command-Line | --no-nodeid-checks |
|Format | |
+-------------+--------------------+
| | Permitted Values |
| +----------+---------+
| | Type |boolean |
| +----------+---------+
| | Default |FALSE |
+-------------+----------+---------+
Do not perform any checks of node IDs.
o --configdir=path
+-------------+-------------------------------------+
|Command-Line | --configdir=directory |
|Format | |
+-------------+-------------------------------------+
| | --config-dir=directory |
+-------------+-------------------------------------+
| | Permitted Values |
| +---------+---------------------------+
| | Type | file name |
| +---------+---------------------------+
| | Default | $INSTALLDIR/mysql-cluster |
+-------------+---------+---------------------------+
Specifies the cluster management server's configuration cache
directory. --config-dir is an alias for this option.
o This option, whose default value is 1 (or TRUE, or ON), can be used
to disable the management server's configuration cache, so that it
reads its configuration from config.ini every time it starts (see
Section 16.3.2, "MySQL Cluster Configuration Files"). You can do
this by starting the ndb_mgmd process with any one of the following
options:
o --config-cache=0
o --config-cache=FALSE
o --config-cache=OFF
o --skip-config-cache
Using one of the options just listed is effective only if the
management server has no stored configuration at the time it is
started. If the management server finds any configuration cache
files, then the --config-cache option or the
--skip-config-cache option is ignored. Therefore, to disable
configuration caching, the option should be used the first time
that the management server is started. Otherwise--that is, if
you wish to disable configuration caching for a management
server that has already created a configuration cache--you must
stop the management server, delete any existing configuration
cache files manually, then restart the management server with
--skip-config-cache (or with --config-cache set equal to 0,
OFF, or FALSE).
Configuration cache files are normally created in a directory
named mysql-cluster under the installation directory (unless
this location has been overridden using the --configdir
option). Each time the management server updates its
configuration data, it writes a new cache file. The files are
named sequentially in order of creation using the following
format:
ndb_node-id_config.bin.seq-number
node-id is the management server's node ID; seq-number is a
sequence number, beginning with 1. For example, if the
management server's node ID is 5, then the first three
configuration cache files would, when they are created, be
named ndb_5_config.bin.1, ndb_5_config.bin.2, and
ndb_5_config.bin.3.
If your intent is to purge or reload the configuration cache
without actually disabling caching, you should start ndb_mgmd
with one of the options --reload or --initial instead of
--skip-config-cache.
To re-enable the configuration cache, simply restart the
management server, but without the --config-cache or
--skip-config-cache option that was used previously to disable
the configuration cache.
Beginning with MySQL Cluster NDB 7.2.5, ndb_mgmd no longer
checks for the configuration directory (--configdir) or
attempts to create one when --skip-config-cache is used. (Bug
#13428853)
o --config-file=filename, -f filename
+-------------+------------------------+
|Command-Line | --config-file |
|Format | |
+-------------+------------------------+
| | -f |
+-------------+------------------------+
| | -c |
+-------------+------------------------+
| | Permitted Values |
| +---------+--------------+
| | Type | file name |
| +---------+--------------+
| | Default | ./config.ini |
+-------------+---------+--------------+
Instructs the management server as to which file it should use
for its configuration file. By default, the management server
looks for a file named config.ini in the same directory as the
ndb_mgmd executable; otherwise the file name and location must
be specified explicitly.
This option is ignored unless the management server is forced
to read the configuration file, either because ndb_mgmd was
started with the --reload or --initial option, or because the
management server could not find any configuration cache. This
option is also read if ndb_mgmd was started with
--config-cache=OFF. See Section 16.3.2, "MySQL Cluster
Configuration Files", for more information.
o --mycnf
+-------------+-------------------+
|Command-Line | --mycnf |
|Format | |
+-------------+-------------------+
| | Permitted Values |
| +---------+---------+
| | Type | boolean |
| +---------+---------+
| | Default | FALSE |
+-------------+---------+---------+
Read configuration data from the my.cnf file.
o --daemon, -d
+-------------+-------------------+
|Command-Line | --daemon |
|Format | |
+-------------+-------------------+
| | -d |
+-------------+-------------------+
| | Permitted Values |
| +---------+---------+
| | Type | boolean |
| +---------+---------+
| | Default | TRUE |
+-------------+---------+---------+
Instructs ndb_mgmd to start as a daemon process. This is the
default behavior.
This option has no effect when running ndb_mgmd on Windows
platforms.
o --interactive
+-------------+-------------------+
|Command-Line | --interactive |
|Format | |
+-------------+-------------------+
| | Permitted Values |
| +---------+---------+
| | Type | boolean |
| +---------+---------+
| | Default | FALSE |
+-------------+---------+---------+
Starts ndb_mgmd in interactive mode; that is, an ndb_mgm client
session is started as soon as the management server is running.
This option does not start any other MySQL Cluster nodes.
o --initial
+-------------+-------------------+
|Command-Line | --initial |
|Format | |
+-------------+-------------------+
| | Permitted Values |
| +---------+---------+
| | Type | boolean |
| +---------+---------+
| | Default | FALSE |
+-------------+---------+---------+
Configuration data is cached internally, rather than being read
from the cluster global configuration file each time the
management server is started (see Section 16.3.2, "MySQL
Cluster Configuration Files"). Using the --initial option
overrides this behavior, by forcing the management server to
delete any existing cache files, and then to re-read the
configuration data from the cluster configuration file and to
build a new cache.
This differs in two ways from the --reload option. First,
--reload forces the server to check the configuration file
against the cache and reload its data only if the contents of
the file are different from the cache. Second, --reload does
not delete any existing cache files.
If ndb_mgmd is invoked with --initial but cannot find a global
configuration file, the management server cannot start.
When a management server starts, it checks for another
management server in the same MySQL Cluster and tries to use
the other management server's configuration data; ndb_mgmd
ignores --initial unless it is the only management server
running. This behavior also has implications when performing a
rolling restart of a MySQL Cluster with multiple management
nodes. See Section 16.5.4, "Performing a Rolling Restart of a
MySQL Cluster", for more information.
o --log-name=name
+-------------+--------------------+
|Command-Line | --log-name= |
|Format | |
+-------------+--------------------+
| | Permitted Values |
| +---------+----------+
| | Type | string |
| +---------+----------+
| | Default | MgmtSrvr |
+-------------+---------+----------+
Provides a name to be used for this node in the cluster log.
o --nodaemon
+-------------+--------------------------+
|Command-Line | --nodaemon |
|Format | |
+-------------+--------------------------+
| | Permitted Values |
| +----------------+---------+
| | Type | boolean |
| +----------------+---------+
| | Default | FALSE |
+-------------+----------------+---------+
| | Permitted Values |
| +----------------+---------+
| | Type (windows) | boolean |
| +----------------+---------+
| | Default | TRUE |
+-------------+----------------+---------+
Instructs ndb_mgmd not to start as a daemon process.
The default behavior for ndb_mgmd on Windows is to run in the
foreground, making this option unnecessary on Windows
platforms.
o --print-full-config, -P
+-------------+---------------------+
|Command-Line | --print-full-config |
|Format | |
+-------------+---------------------+
| | -P |
+-------------+---------------------+
| | Permitted Values |
| +----------+----------+
| | Type | boolean |
| +----------+----------+
| | Default | FALSE |
+-------------+----------+----------+
Shows extended information regarding the configuration of the
cluster. With this option on the command line the ndb_mgmd
process prints information about the cluster setup including an
extensive list of the cluster configuration sections as well as
parameters and their values. Normally used together with the
--config-file (-f) option.
o --reload
+-------------+-------------------+
|Command-Line | --reload |
|Format | |
+-------------+-------------------+
| | Permitted Values |
| +---------+---------+
| | Type | boolean |
| +---------+---------+
| | Default | FALSE |
+-------------+---------+---------+
In MySQL Cluster NDB 7.2, configuration data is stored
internally rather than being read from the cluster global
configuration file each time the management server is started
(see Section 16.3.2, "MySQL Cluster Configuration Files").
Using this option forces the management server to check its
internal data store against the cluster configuration file and
to reload the configuration if it finds that the configuration
file does not match the cache. Existing configuration cache
files are preserved, but not used.
This differs in two ways from the --initial option. First,
--initial causes all cache files to be deleted. Second,
--initial forces the management server to re-read the global
configuration file and construct a new cache.
If the management server cannot find a global configuration
file, then the --reload option is ignored.
When a management server starts, it checks for another
management server in the same MySQL Cluster and tries to use
the other management server's configuration data; ndb_mgmd
ignores --reload unless it is the only management server
running. This behavior also has implications when performing a
rolling restart of a MySQL Cluster with multiple management
nodes. See Section 16.5.4, "Performing a Rolling Restart of a
MySQL Cluster", for more information.
o --nowait-nodes
+-------------+---------------------+
|Command-Line | --nowait-nodes=list |
|Format | |
+-------------+---------------------+
| | Permitted Values |
| +----------+----------+
| | Type |numeric |
| +----------+----------+
| | Default | |
| +----------+----------+
| | Range |1 .. 255 |
+-------------+----------+----------+
When starting a MySQL Cluster is configured with two management
nodes, each management server normally checks to see whether
the other ndb_mgmd is also operational and whether the other
management server's configuration is identical to its own.
However, it is sometimes desirable to start the cluster with
only one management node (and perhaps to allow the other
ndb_mgmd to be started later). This option causes the
management node to bypass any checks for any other management
nodes whose node IDs are passed to this option, permitting the
cluster to start as though configured to use only the
management node that was started.
For purposes of illustration, consider the following portion of
a config.ini file (where we have omitted most of the
configuration parameters that are not relevant to this
example):
[ndbd]
NodeId = 1
HostName = 192.168.0.101
[ndbd]
NodeId = 2
HostName = 192.168.0.102
[ndbd]
NodeId = 3
HostName = 192.168.0.103
[ndbd]
NodeId = 4
HostName = 192.168.0.104
[ndb_mgmd]
NodeId = 10
HostName = 192.168.0.150
[ndb_mgmd]
NodeId = 11
HostName = 192.168.0.151
[api]
NodeId = 20
HostName = 192.168.0.200
[api]
NodeId = 21
HostName = 192.168.0.201
Assume that you wish to start this cluster using only the
management server having node ID 10 and running on the host
having the IP address 192.168.0.150. (Suppose, for example,
that the host computer on which you intend to the other
management server is temporarily unavailable due to a hardware
failure, and you are waiting for it to be repaired.) To start
the cluster in this way, use a command line on the machine at
192.168.0.150 to enter the following command:
shell> ndb_mgmd --ndb-nodeid=10 --nowait-nodes=11
As shown in the preceding example, when using --nowait-nodes,
you must also use the --ndb-nodeid option to specify the node
ID of this ndb_mgmd process.
You can then start each of the cluster's data nodes in the
usual way. If you wish to start and use the second management
server in addition to the first management server at a later
time without restarting the data nodes, you must start each
data node with a connectstring that references both management
servers, like this:
shell> ndbd -c 192.168.0.150,192.168.0.151
The same is true with regard to the connectstring used with any
mysqld processes that you wish to start as MySQL Cluster SQL
nodes connected to this cluster. See Section 16.3.2.3, "The
MySQL Cluster Connectstring", for more information.
When used with ndb_mgmd, this option affects the behavior of
the management node with regard to other management nodes only.
Do not confuse it with the --nowait-nodes option used with ndbd
or ndbmtd to permit a cluster to start with fewer than its full
complement of data nodes; when used with data nodes, this
option affects their behavior only with regard to other data
nodes.
Multiple management node IDs may be passed to this option as a
comma-separated list. Each node ID must be no less than 1 and
no greater than 255. In practice, it is quite rare to use more
than two management servers for the same MySQL Cluster (or to
have any need for doing so); in most cases you need to pass to
this option only the single node ID for the one management
server that you do not wish to use when starting the cluster.
Note
When you later start the "missing" management server, its
configuration must match that of the management server that
is already in use by the cluster. Otherwise, it fails the
configuration check performed by the existing management
server, and does not start.
It is not strictly necessary to specify a connectstring when
starting the management server. However, if you are using more than
one management server, a connectstring should be provided and each
node in the cluster should specify its node ID explicitly.
See Section 16.3.2.3, "The MySQL Cluster Connectstring", for
information about using connectstrings. ndb_mgmd(8), describes
other options for ndb_mgmd.
The following files are created or used by ndb_mgmd in its starting
directory, and are placed in the DataDir as specified in the
config.ini configuration file. In the list that follows, node_id is
the unique node identifier.
o config.ini is the configuration file for the cluster as a
whole. This file is created by the user and read by the
management server. Section 16.3, "MySQL Cluster
Configuration", discusses how to set up this file.
o ndb_node_id_cluster.log is the cluster events log file.
Examples of such events include checkpoint startup and
completion, node startup events, node failures, and levels of
memory usage. A complete listing of cluster events with
descriptions may be found in Section 16.5, "Management of MySQL
Cluster".
When the size of the cluster log reaches one million bytes, the
file is renamed to ndb_node_id_cluster.log.seq_id, where seq_id
is the sequence number of the cluster log file. (For example:
If files with the sequence numbers 1, 2, and 3 already exist,
the next log file is named using the number 4.)
o ndb_node_id_out.log is the file used for stdout and stderr when
running the management server as a daemon.
o ndb_node_id.pid is the process ID file used when running the
management server as a daemon.
o --install[=name]
+-------------+---------------------------+
|Command-Line | --install[=name] |
|Format | |
+-------------+---------------------------+
| | Permitted Values |
| +----------------+----------+
| | Type (windows) | string |
| +----------------+----------+
| | Default | ndb_mgmd |
+-------------+----------------+----------+
Causes ndb_mgmd to be installed as a Windows service.
Optionally, you can specify a name for the service; if not set,
the service name defaults to ndb_mgmd. Although it is
preferable to specify other ndb_mgmd program options in a
my.ini or my.cnf configuration file, it is possible to use them
together with --install. However, in such cases, the --install
option must be specified first, before any other options are
given, for the Windows service installation to succeed.
It is generally not advisable to use this option together with
the --initial option, since this causes the configuration cache
to be wiped and rebuilt every time the service is stopped and
started. Care should also be taken if you intend to use any
other ndb_mgmd options that affect the starting of the
management server, and you should make absolutely certain you
fully understand and allow for any possible consequences of
doing so.
The --install option has no effect on non-Windows platforms.
o --remove[=name]
+-------------+---------------------------+
|Command-Line | --remove[=name] |
|Format | |
+-------------+---------------------------+
| | Permitted Values |
| +----------------+----------+
| | Type (windows) | string |
| +----------------+----------+
| | Default | ndb_mgmd |
+-------------+----------------+----------+
Causes an ndb_mgmd process that was previously installed as a
Windows service to be removed. Optionally, you can specify a
name for the service to be uninstalled; if not set, the service
name defaults to ndb_mgmd.
The --remove option has no effect on non-Windows platforms.
COPYRIGHT
Copyright (C) 2007, 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/29/2012 ndb_mgmd(8)
mysql 5.5.23 - Generated Sat Apr 14 07:52:22 CDT 2012
