The [ndb_mgmd]
section is used to configure
the behavior of the management server. [mgm]
can be used as an alias; the two section names are equivalent.
All parameters in the following list are optional and assume
their default values if omitted.
If neither the ExecuteOnComputer
nor the
HostName
parameter is present, the default
value localhost
will be assumed for both.
Restart Type | node | |
Permitted Values | ||
Type | numeric |
|
Default |
|
|
Range | 1-63 |
Each node in the cluster has a unique identity. For a management node, this is represented by an integer value in the range 1 to 63 inclusive (previous to MySQL Cluster NDB 6.1.1), or in the range 1 to 255 inclusive (MySQL Cluster NDB 6.1.1 and later). This ID is used by all internal cluster messages for addressing the node, and so must be unique for each MySQL Cluster node, regardless of the type of node.
Data node IDs must be less than 49, regardless of the MySQL Cluster version used. If you plan to deploy a large number of data nodes, it is a good idea to limit the node IDs for management nodes (and API nodes) to values greater than 48.
This parameter can also be written as
NodeId
, although the short form is
sufficient (and preferred for this reason).
Restart Type | system | |
Permitted Values | ||
Type | string |
|
Default |
|
|
Range | - |
This refers to the Id
set for one of the
computers defined in a [computer]
section
of the config.ini
file.
Restart Type | node | |
Permitted Values | ||
Type | numeric |
|
Default | 1186 |
|
Range | 0-64K |
This is the port number on which the management server listens for configuration requests and management commands.
Restart Type | system | |
Permitted Values | ||
Type | string |
|
Default |
|
|
Range | - |
Specifying this parameter defines the hostname of the
computer on which the management node is to reside. To
specify a hostname other than localhost
,
either this parameter or
ExecuteOnComputer
is required.
Restart Type | node | |
Permitted Values | ||
Type | string |
|
Default | FILE:filename=ndb_nodeid_cluster.log,maxsize=1000000,maxfiles=6 |
|
Range | - |
This parameter specifies where to send cluster logging
information. There are three options in this regard —
CONSOLE
, SYSLOG
, and
FILE
— with FILE
being the default:
CONSOLE
outputs the log to
stdout
:
CONSOLE
SYSLOG
sends the log to a
syslog
facility, possible values
being one of auth
,
authpriv
, cron
,
daemon
, ftp
,
kern
, lpr
,
mail
, news
,
syslog
, user
,
uucp
, local0
,
local1
, local2
,
local3
, local4
,
local5
, local6
, or
local7
.
Not every facility is necessarily supported by every operating system.
SYSLOG:facility=syslog
FILE
pipes the cluster log output to
a regular file on the same machine. The following values
can be specified:
filename
: The name of the log
file.
maxsize
: The maximum size (in
bytes) to which the file can grow before logging
rolls over to a new file. When this occurs, the old
log file is renamed by appending
.N
to the file name,
where N
is the next
number not yet used with this name.
maxfiles
: The maximum number of
log files.
FILE:filename=cluster.log,maxsize=1000000,maxfiles=6
The default value for the FILE
parameter is
FILE:filename=ndb_
,
where node_id
_cluster.log,maxsize=1000000,maxfiles=6node_id
is the ID of
the node.
It is possible to specify multiple log destinations separated by semicolons as shown here:
CONSOLE;SYSLOG:facility=local0;FILE:filename=/var/log/mgmd
Restart Type | node | |
Permitted Values | ||
Type | numeric |
|
Default | 1 |
|
Range | 0-2 |
This parameter is used to define which nodes can act as
arbitrators. Only management nodes and SQL nodes can be
arbitrators. ArbitrationRank
can take one
of the following values:
0
: The node will never be used as an
arbitrator.
1
: The node has high priority; that
is, it will be preferred as an arbitrator over
low-priority nodes.
2
: Indicates a low-priority node
which be used as an arbitrator only if a node with a
higher priority is not available for that purpose.
Normally, the management server should be configured as an
arbitrator by setting its ArbitrationRank
to 1 (the default for management nodes) and those for all
SQL nodes to 0 (the default for SQL nodes).
Beginning with MySQL 5.1.16 and MySQL Cluster NDB 6.1.3, it
is possible to disable arbitration completely by setting
ArbitrationRank
to 0 on all management
and SQL nodes. In MySQL Cluster NDB 7.0.7 and later
releases, you can also control arbitration by overriding
this parameter; to do this, set the
Arbitration
parameter in the [ndbd default]
section
of the config.ini
global configuration
file.
Restart Type | node | |
Permitted Values | ||
Type | numeric |
|
Default | 0 |
|
Range | 0-4G |
An integer value which causes the management server's responses to arbitration requests to be delayed by that number of milliseconds. By default, this value is 0; it is normally not necessary to change it.
Restart Type | node | |
Permitted Values | ||
Type | string |
|
Default | . |
|
Range | - |
This specifies the directory where output files from the
management server will be placed. These files include
cluster log files, process output files, and the daemon's
process ID (PID) file. (For log files, this location can be
overridden by setting the FILE
parameter
for LogDestination
as discussed
previously in this section.)
The default value for this parameter is the directory in which ndb_mgmd is located.
Beginning with MySQL Cluster NDB 6.3.32, MySQL Cluster NDB 7.0.13, and MySQL Cluster NDB 7.1.2, it is possible to use this parameter to set the scheduling policy and priority of heartbeat threads for management and API nodes.
The syntax for setting this parameter is shown here:
HeartbeatThreadPriority =policy
[,priority
]policy
: {FIFO | RR}
When setting this parameter, you must specify a policy. This
is one of FIFO
(first in, first in) or
RR
(round robin). This followed
optionally by the priority (an integer).
This parameter is available beginning with MySQL Cluster NDB 6.4.0. It is used to determine the total amount of memory to allocate on this node for shared send buffer memory among all configured transporters.
If this parameter is set, its minimum allowed value is 256K;
the maxmimum is 4294967039. For more detailed information
about the behavior and use of
TotalSendBufferMemory
and configuring
send buffer memory parameters in MySQL Cluster NDB 6.4.0 and
later, see
Section 3.2.13, “Configuring MySQL Cluster Send Buffer Parameters”.
After making changes in a management node's configuration, it is necessary to perform a rolling restart of the cluster in order for the new configuration to take effect.
To add new management servers to a running MySQL Cluster, it
is also necessary to perform a rolling restart of all cluster
nodes after modifying any existing
config.ini
files. For more information
about issues arising when using multiple management nodes, see
Section 1.5.10, “Limitations Relating to Multiple MySQL Cluster Nodes”.