DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

(mysql.info) multi-config

Info Catalog (mysql.info) multi-install (mysql.info) multi-computer (mysql.info) multi-initial
 
 15.3.3 Multi-Computer Configuration
 -----------------------------------
 
 For our four-node, four-host MySQL Cluster, we will need to write four
 configuration files, one per node/host.
 
    * Each data node or SQL node requires a `my.cnf' file that provides
      two pieces of information: a *connectstring* telling the node
      where to find the MGM node, and a line telling the MySQL server on
      this host (the machine hosting the data node) to run in NDB mode.
 
      For more information on connectstrings, see 
      mysql-cluster-connectstring.
 
    * The management node needs a `config.ini' file telling it how many
      replicas to maintain, how much memory to allocate for data and
      indexes on each data node, where to find the data nodes, where to
      save data to disk on each data node, and where to find any SQL
      nodes.
 
 *Configuring the Storage and SQL Nodes*
 
 The `my.cnf' file needed for the data nodes is fairly simple. The
 configuration file should be located in the `/etc' directory and can be
 edited using any text editor. (Create the file if it does not exist.)
 For example:
 
      shell> vi /etc/my.cnf
 
 We show `vi' being used here to create the file, but any text editor
 should work just as well.
 
 For each data node and SQL node in our example setup, `my.cnf' should
 look like this:
 
      # Options for mysqld process:
      [MYSQLD]
      ndbcluster                      # run NDB engine
      ndb-connectstring=192.168.0.10  # location of MGM node
 
      # Options for ndbd process:
      [MYSQL_CLUSTER]
      ndb-connectstring=192.168.0.10  # location of MGM node
 
 After entering the preceding information, save this file and exit the
 text editor. Do this for the machines hosting data node `A', data node
 `B', and the SQL node.
 
 *Configuring the Management Node*
 
 The first step in configuring the MGM node is to create the directory
 in which the configuration file can be found and then to create the
 file itself. For example (running as `root'):
 
      shell> mkdir /var/lib/mysql-cluster
      shell> cd /var/lib/mysql-cluster
      shell> vi config.ini
 
 For our representative setup, the `config.ini' file should read as
 follows:
 
      # Options affecting ndbd processes on all data nodes:
      [NDBD DEFAULT]
      NoOfReplicas=2    # Number of replicas
      DataMemory=80M    # How much memory to allocate for data storage
      IndexMemory=18M   # How much memory to allocate for index storage
                        # For DataMemory and IndexMemory, we have used the
                        # default values. Since the "world" database takes up
                        # only about 500KB, this should be more than enough for
                        # this example Cluster setup.
 
      # TCP/IP options:
      [TCP DEFAULT]
      portnumber=2202   # This the default; however, you can use any
                        # port that is free for all the hosts in cluster
                        # Note: It is recommended beginning with MySQL 5.0 that
                        # you do not specify the portnumber at all and simply allow
                        # the default value to be used instead
 
      # Management process options:
      [NDB_MGMD]
      hostname=192.168.0.10           # Hostname or IP address of MGM node
      datadir=/var/lib/mysql-cluster  # Directory for MGM node logfiles
 
      # Options for data node "A":
      [NDBD]
                                      # (one [NDBD] section per data node)
      hostname=192.168.0.30           # Hostname or IP address
      datadir=/usr/local/mysql/data   # Directory for this data node's datafiles
 
      # Options for data node "B":
      [NDBD]
      hostname=192.168.0.40           # Hostname or IP address
      datadir=/usr/local/mysql/data   # Directory for this data node's datafiles
 
      # SQL node options:
      [MYSQLD]
      hostname=192.168.0.20           # Hostname or IP address
                                      # (additional mysqld connections can be
                                      # specified for this node for various
                                      # purposes such as running ndb_restore)
 
 (* The `world' database can be downloaded from
 `http://dev.mysql.com/doc/', where it can be found listed under
 `Examples.')
 
 After all the configuration files have been created and these minimal
 options have been specified, you are ready to proceed with starting the
 cluster and verifying that all processes are running. We discuss how
 this is done in  multi-initial.
 
 For more detailed information about the available MySQL Cluster
 configuration parameters and their uses, see 
 mysql-cluster-config-file, and  mysql-cluster-configuration.
 For configuration of MySQL Cluster as relates to making backups, see
  mysql-cluster-backup-configuration.
 
 * The default port for Cluster management nodes is 1186; the
 default port for data nodes is 2202. Beginning with MySQL 5.0.3, this
 restriction is lifted, and the cluster automatically allocates ports
 for data nodes from those that are already free.
 
Info Catalog (mysql.info) multi-install (mysql.info) multi-computer (mysql.info) multi-initial
automatically generated byinfo2html