Home Man
Search
Today's Posts
Register

Linux & Unix Commands - Search Man Pages

Linux 2.6 - man page for ndbd (linux section 8)

NDBD(8) 			      MySQL Database System				  NDBD(8)

NAME
       ndbd - the MySQL Cluster data node daemon

SYNOPSIS
       ndbd options

DESCRIPTION
       ndbd is the process that is used to handle all the data in tables using the NDB Cluster
       storage engine. This is the process that empowers a data node to accomplish distributed
       transaction handling, node recovery, checkpointing to disk, online backup, and related
       tasks.

       In a MySQL Cluster, a set of ndbd processes cooperate in handling data. These processes
       can execute on the same computer (host) or on different computers. The correspondences
       between data nodes and Cluster hosts is completely configurable.

       The following table includes command options specific to the MySQL Cluster data node
       program ndbd. Additional descriptions follow the table. For options common to most MySQL
       Cluster programs (including ndbd), see Options Common to MySQL Cluster Programs(1).

       Table 17.10. ndbd Options and Variables: MySQL Cluster NDB 7.2
       +-------------------------+--------------------------+-------------------------+
       |Format			 | Description		    | Added / Removed	      |
       +-------------------------+--------------------------+-------------------------+
       |			 | Perform initial start of |			      |
       |       --initial	 | ndbd, including cleaning |	     All MySQL 5.5    |
       |			 | the file system.	    |	     based releases   |
       |			 |	       Consult the  |			      |
       |			 | documentation before     |			      |
       |			 | using this option	    |			      |
       +-------------------------+--------------------------+-------------------------+
       |			 | Don't start ndbd	    |			      |
       |       --nostart,	 | immediately; ndbd waits  |	     All MySQL 5.5    |
       |			 | for command to start     |	     based releases   |
       |       -n		 | from 		    |			      |
       |			 |	       ndb_mgmd     |			      |
       +-------------------------+--------------------------+-------------------------+
       |			 | Start ndbd as daemon     |			      |
       |       --daemon,	 | (default); override with |	     All MySQL 5.5    |
       |			 | --nodaemon		    |	     based releases   |
       |       -d		 |			    |			      |
       +-------------------------+--------------------------+-------------------------+
       |			 | Do not start ndbd as     |			      |
       |       --nodaemon	 | daemon; provided for     |	     All MySQL 5.5    |
       |			 | testing purposes	    |	     based releases   |
       +-------------------------+--------------------------+-------------------------+
       |			 | Run ndbd in foreground,  |			      |
       |       --foreground	 | provided for debugging   |	     All MySQL 5.5    |
       |			 | purposes (implies	    |	     based releases   |
       |			 |	       --nodaemon)  |			      |
       +-------------------------+--------------------------+-------------------------+
       |			 | Do not wait for these    |			      |
       |       --nowait-	 | data nodes to start	    |	     All MySQL 5.5    |
       |       nodes=list	 | (takes comma-separated   |	     based releases   |
       |			 | list of		    |			      |
       |			 |	       node IDs).   |			      |
       |			 | Also requires	    |			      |
       |			 | --ndb-nodeid to be used. |			      |
       +-------------------------+--------------------------+-------------------------+
       |			 | Perform partial initial  |			      |
       |       --initial-start	 | start (requires	    |	     All MySQL 5.5    |
       |			 | --nowait-nodes)	    |	     based releases   |
       +-------------------------+--------------------------+-------------------------+
       |			 | Local bind address	    |			      |
       |       --bind-		 |			    |	     All MySQL 5.5    |
       |       address=name	 |			    |	     based releases   |
       +-------------------------+--------------------------+-------------------------+
       |			 | Used to install the data |			      |
       |       --install[=name]  | node process as a	    |	     All MySQL 5.5    |
       |			 | Windows service. Does    |	     based releases   |
       |			 | not			    |			      |
       |			 |	       apply on     |			      |
       |			 | non-Windows platforms.   |			      |
       +-------------------------+--------------------------+-------------------------+
       |			 | Used to remove a data    |			      |
       |       --remove[=name]	 | node process that was    |	     All MySQL 5.5    |
       |			 | previously installed as  |	     based releases   |
       |			 | a			    |			      |
       |			 |	       Windows	    |			      |
       |			 | service. Does not apply  |			      |
       |			 | on non-Windows	    |			      |
       |			 | platforms.		    |			      |
       +-------------------------+--------------------------+-------------------------+
       |			 | Number of times to try   |			      |
       |       --connect-	 | contacting the	    |	     ADDED: NDB 7.2.9 |
       |       retries=#	 | management server; set   |			      |
       |			 | to -1 to		    |			      |
       |			 |	       keep trying  |			      |
       |			 | indefinitely 	    |			      |
       +-------------------------+--------------------------+-------------------------+
       |			 | Time to wait between     |			      |
       |       --connect-delay=# | attempts to contact a    |	     ADDED: NDB 7.2.9 |
       |			 | management server, in    |			      |
       |			 | seconds		    |			      |
       +-------------------------+--------------------------+-------------------------+

	   Note
	   All of these options also apply to the multi-threaded version of this program (ndbmtd)
	   and you may substitute "ndbmtd" for "ndbd" wherever the latter occurs in this section.

       o   --bind-address

	   +--------------------+---------------------+
	   |Command-Line Format | --bind-address=name |
	   +--------------------+---------------------+
	   |			| Permitted Values    |
	   |			+----------+----------+
	   |			| Type	   | string   |
	   |			+----------+----------+
	   |			| Default  |	      |
	   +--------------------+----------+----------+
	   Causes ndbd to bind to a specific network interface (host name or IP address). This
	   option has no default value.

       o   --daemon, -d

	   +--------------------+-------------------+
	   |Command-Line Format | --daemon	    |
	   +--------------------+-------------------+
	   |			| -d		    |
	   +--------------------+-------------------+
	   |			| Permitted Values  |
	   |			+---------+---------+
	   |			| Type	  | boolean |
	   |			+---------+---------+
	   |			| Default | TRUE    |
	   +--------------------+---------+---------+
	   Instructs ndbd or ndbmtd to execute as a daemon process. This is the default behavior.
	   --nodaemon can be used to prevent the process from running as a daemon.

	   This option has no effect when running ndbd or ndbmtd on Windows platforms.

       o   --nodaemon

	   +--------------------+-------------------+
	   |Command-Line Format | --nodaemon	    |
	   +--------------------+-------------------+
	   |			| Permitted Values  |
	   |			+---------+---------+
	   |			| Type	  | boolean |
	   |			+---------+---------+
	   |			| Default | FALSE   |
	   +--------------------+---------+---------+
	   Prevents ndbd or ndbmtd from executing as a daemon process. This option overrides the
	   --daemon option. This is useful for redirecting output to the screen when debugging
	   the binary.

	   The default behavior for ndbd and ndbmtd on Windows is to run in the foreground,
	   making this option unnecessary on Windows platforms, where it has no effect.

       o   --foreground

	   +--------------------+-------------------+
	   |Command-Line Format | --foreground	    |
	   +--------------------+-------------------+
	   |			| Permitted Values  |
	   |			+---------+---------+
	   |			| Type	  | boolean |
	   |			+---------+---------+
	   |			| Default | FALSE   |
	   +--------------------+---------+---------+
	   Causes ndbd or ndbmtd to execute as a foreground process, primarily for debugging
	   purposes. This option implies the --nodaemon option.

	   This option has no effect when running ndbd or ndbmtd on Windows platforms.

       o   --initial

	   +--------------------+-------------------+
	   |Command-Line Format | --initial	    |
	   +--------------------+-------------------+
	   |			| Permitted Values  |
	   |			+---------+---------+
	   |			| Type	  | boolean |
	   |			+---------+---------+
	   |			| Default | FALSE   |
	   +--------------------+---------+---------+
	   Instructs ndbd to perform an initial start. An initial start erases any files created
	   for recovery purposes by earlier instances of ndbd. It also re-creates recovery log
	   files. Note that on some operating systems this process can take a substantial amount
	   of time.

	   An --initial start is to be used only when starting the ndbd process under very
	   special circumstances; this is because this option causes all files to be removed from
	   the MySQL Cluster file system and all redo log files to be re-created. These
	   circumstances are listed here:

	   o   When performing a software upgrade which has changed the contents of any files.

	   o   When restarting the node with a new version of ndbd.

	   o   As a measure of last resort when for some reason the node restart or system
	       restart repeatedly fails. In this case, be aware that this node can no longer be
	       used to restore data due to the destruction of the data files.

	   Use of this option prevents the StartPartialTimeout and StartPartitionedTimeout
	   configuration parameters from having any effect.

	       Important
	       This option does not affect either of the following types of files:

	       o   Backup files that have already been created by the affected node

	       o   MySQL Cluster Disk Data files (see Section 17.5.12, "MySQL Cluster Disk Data
		   Tables").

	       This option also has no effect on recovery of data by a data node that is just
	       starting (or restarting) from data nodes that are already running. This recovery
	       of data occurs automatically, and requires no user intervention in a MySQL Cluster
	       that is running normally.
	   It is permissible to use this option when starting the cluster for the very first time
	   (that is, before any data node files have been created); however, it is not necessary
	   to do so.

       o   --initial-start

	   +--------------------+-------------------+
	   |Command-Line Format | --initial-start   |
	   +--------------------+-------------------+
	   |			| Permitted Values  |
	   |			+---------+---------+
	   |			| Type	  | boolean |
	   |			+---------+---------+
	   |			| Default | FALSE   |
	   +--------------------+---------+---------+
	   This option is used when performing a partial initial start of the cluster. Each node
	   should be started with this option, as well as --nowait-nodes.

	   Suppose that you have a 4-node cluster whose data nodes have the IDs 2, 3, 4, and 5,
	   and you wish to perform a partial initial start using only nodes 2, 4, and 5--that is,
	   omitting node 3:

	       shell> ndbd --ndb-nodeid=2 --nowait-nodes=3 --initial-start
	       shell> ndbd --ndb-nodeid=4 --nowait-nodes=3 --initial-start
	       shell> ndbd --ndb-nodeid=5 --nowait-nodes=3 --initial-start

	   When using this option, you must also specify the node ID for the data node being
	   started with the --ndb-nodeid option.

	       Important
	       Do not confuse this option with the --nowait-nodes option for ndb_mgmd, which can
	       be used to enable a cluster configured with multiple management servers to be
	       started without all management servers being online.

       o   --nowait-nodes=node_id_1[, node_id_2[, ...]]

	   +--------------------+---------------------+
	   |Command-Line Format | --nowait-nodes=list |
	   +--------------------+---------------------+
	   |			| Permitted Values    |
	   |			+----------+----------+
	   |			| Type	   | string   |
	   |			+----------+----------+
	   |			| Default  |	      |
	   +--------------------+----------+----------+
	   This option takes a list of data nodes which for which the cluster will not wait for
	   before starting.

	   This can be used to start the cluster in a partitioned state. For example, to start
	   the cluster with only half of the data nodes (nodes 2, 3, 4, and 5) running in a
	   4-node cluster, you can start each ndbd process with --nowait-nodes=3,5. In this case,
	   the cluster starts as soon as nodes 2 and 4 connect, and does not wait
	   StartPartitionedTimeout milliseconds for nodes 3 and 5 to connect as it would
	   otherwise.

	   If you wanted to start up the same cluster as in the previous example without one ndbd
	   (say, for example, that the host machine for node 3 has suffered a hardware failure)
	   then start nodes 2, 4, and 5 with --nowait-nodes=3. Then the cluster will start as
	   soon as nodes 2, 4, and 5 connect and will not wait for node 3 to start.

       o   --nostart, -n

	   +--------------------+-------------------+
	   |Command-Line Format | --nostart	    |
	   +--------------------+-------------------+
	   |			| -n		    |
	   +--------------------+-------------------+
	   |			| Permitted Values  |
	   |			+---------+---------+
	   |			| Type	  | boolean |
	   |			+---------+---------+
	   |			| Default | FALSE   |
	   +--------------------+---------+---------+
	   Instructs ndbd not to start automatically. When this option is used, ndbd connects to
	   the management server, obtains configuration data from it, and initializes
	   communication objects. However, it does not actually start the execution engine until
	   specifically requested to do so by the management server. This can be accomplished by
	   issuing the proper START command in the management client (see Section 17.5.2,
	   "Commands in the MySQL Cluster Management Client").

       o   --install[=name]

	   +--------------------+------------------+
	   |Command-Line Format | --install[=name] |
	   +--------------------+------------------+
	   |			| Permitted Values |
	   |			+---------+--------+
	   |			| Type	  | string |
	   |			+---------+--------+
	   |			| Default | ndbd   |
	   +--------------------+---------+--------+
	   Causes ndbd to be installed as a Windows service. Optionally, you can specify a name
	   for the service; if not set, the service name defaults to ndbd. Although it is
	   preferable to specify other ndbd program options in a my.ini or my.cnf configuration
	   file, it is possible to use 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 data node file system to be wiped and rebuilt every time the
	   service is stopped and started. Extreme care should also be taken if you intend to use
	   any of the other ndbd options that affect the starting of data nodes--including
	   --initial-start, --nostart, and --nowait-nodes--together with --install, 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 Format | --remove[=name]  |
	   +--------------------+------------------+
	   |			| Permitted Values |
	   |			+---------+--------+
	   |			| Type	  | string |
	   |			+---------+--------+
	   |			| Default | ndbd   |
	   +--------------------+---------+--------+
	   Causes an ndbd 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 ndbd.

	   The --remove option has no effect on non-Windows platforms.

       o   --connect-retries=#

	   +--------------------+-----------------------+
	   |Introduced		| 5.5.28-ndb-7.2.9	|
	   +--------------------+-----------------------+
	   |Command-Line Format | --connect-retries=#	|
	   +--------------------+-----------------------+
	   |			| Permitted Values	|
	   |			+---------+-------------+
	   |			| Type	  | numeric	|
	   |			+---------+-------------+
	   |			| Default | 12		|
	   |			+---------+-------------+
	   |			| Range   | -1 .. 65535 |
	   +--------------------+---------+-------------+
	   Determines the number of times that the data node attempts to contact a management
	   server when starting. Setting this option to -1 causes the data node to keep trying to
	   make contact indefinitely. The default is 12 attempts. The time to wait between
	   attempts is controlled by the --connect-delay option.

	   This option was added in MySQL Cluster NDB 7.2.9.

       o   --connect-delay=#

	   +--------------------+---------------------+
	   |Introduced		| 5.5.28-ndb-7.2.9    |
	   +--------------------+---------------------+
	   |Command-Line Format | --connect-delay=#   |
	   +--------------------+---------------------+
	   |			| Permitted Values    |
	   |			+---------+-----------+
	   |			| Type	  | numeric   |
	   |			+---------+-----------+
	   |			| Default | 5	      |
	   |			+---------+-----------+
	   |			| Range   | 0 .. 3600 |
	   +--------------------+---------+-----------+
	   Determines the time to wait between attempts to contact a management server when
	   starting (the time between attempts is controlled by the --connect-retries option).
	   The default is 5 attempts.

	   This option was added in MySQL Cluster NDB 7.2.9.

       ndbd generates a set of log files which are placed in the directory specified by DataDir
       in the config.ini configuration file.

       These log files are listed below.  node_id is the node's unique identifier. Note that
       node_id represents the node's unique identifier. For example, ndb_2_error.log is the error
       log generated by the data node whose node ID is 2.

       o   ndb_node_id_error.log is a file containing records of all crashes which the referenced
	   ndbd process has encountered. Each record in this file contains a brief error string
	   and a reference to a trace file for this crash. A typical entry in this file might
	   appear as shown here:

	       Date/Time: Saturday 30 July 2004 - 00:20:01
	       Type of error: error
	       Message: Internal program error (failed ndbrequire)
	       Fault ID: 2341
	       Problem data: DbtupFixAlloc.cpp
	       Object of reference: DBTUP (Line: 173)
	       ProgramName: NDB Kernel
	       ProcessID: 14909
	       TraceFile: ndb_2_trace.log.2
	       ***EOM***

	   Listings of possible ndbd exit codes and messages generated when a data node process
	   shuts down prematurely can be found in ndbd Error Messages[1].

	       Important
	       The last entry in the error log file is not necessarily the newest one (nor is it
	       likely to be). Entries in the error log are not listed in chronological order;
	       rather, they correspond to the order of the trace files as determined in the
	       ndb_node_id_trace.log.next file (see below). Error log entries are thus
	       overwritten in a cyclical and not sequential fashion.

       o   ndb_node_id_trace.log.trace_id is a trace file describing exactly what happened just
	   before the error occurred. This information is useful for analysis by the MySQL
	   Cluster development team.

	   It is possible to configure the number of these trace files that will be created
	   before old files are overwritten.  trace_id is a number which is incremented for each
	   successive trace file.

       o   ndb_node_id_trace.log.next is the file that keeps track of the next trace file number
	   to be assigned.

       o   ndb_node_id_out.log is a file containing any data output by the ndbd process. This
	   file is created only if ndbd is started as a daemon, which is the default behavior.

       o   ndb_node_id.pid is a file containing the process ID of the ndbd process when started
	   as a daemon. It also functions as a lock file to avoid the starting of nodes with the
	   same identifier.

       o   ndb_node_id_signal.log is a file used only in debug versions of ndbd, where it is
	   possible to trace all incoming, outgoing, and internal messages with their data in the
	   ndbd process.

       It is recommended not to use a directory mounted through NFS because in some environments
       this can cause problems whereby the lock on the .pid file remains in effect even after the
       process has terminated.

       To start ndbd, it may also be necessary to specify the host name of the management server
       and the port on which it is listening. Optionally, one may also specify the node ID that
       the process is to use.

	   shell> ndbd --connect-string="nodeid=2;host=ndb_mgmd.mysql.com:1186"

       See Section 17.3.2.3, "MySQL Cluster Connection Strings", for additional information about
       this issue.  ndbd(8), describes other options for ndbd.

       When ndbd starts, it actually initiates two processes. The first of these is called the
       "angel process"; its only job is to discover when the execution process has been
       completed, and then to restart the ndbd process if it is configured to do so. Thus, if you
       attempt to kill ndbd using the Unix kill command, it is necessary to kill both processes,
       beginning with the angel process. The preferred method of terminating an ndbd process is
       to use the management client and stop the process from there.

       The execution process uses one thread for reading, writing, and scanning data, as well as
       all other activities. This thread is implemented asynchronously so that it can easily
       handle thousands of concurrent actions. In addition, a watch-dog thread supervises the
       execution thread to make sure that it does not hang in an endless loop. A pool of threads
       handles file I/O, with each thread able to handle one open file. Threads can also be used
       for transporter connections by the transporters in the ndbd process. In a multi-processor
       system performing a large number of operations (including updates), the ndbd process can
       consume up to 2 CPUs if permitted to do so.

       For a machine with many CPUs it is possible to use several ndbd processes which belong to
       different node groups; however, such a configuration is still considered experimental and
       is not supported for MySQL 5.5 in a production setting. See Section 17.1.6, "Known
       Limitations of MySQL Cluster".

COPYRIGHT
       Copyright (C) 1997, 2014, 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/.

NOTES
	1. ndbd Error Messages
	   http://dev.mysql.com/doc/ndbapi/en/ndbd-error-messages.html

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				    01/30/2014					  NDBD(8)


All times are GMT -4. The time now is 07:14 AM.

Unix & Linux Forums Content Copyrightę1993-2018. All Rights Reserved.
UNIX.COM Login
Username:
Password:  
Show Password