Author: js221926
Date: 2011-05-12 13:28:41 +0200 (Thu, 12 May 2011)
New Revision: 26191
Log:
WL#5300 - Reorganise/split up Cluster Linux installation section
Modified:
trunk/refman-5.0/mysql-cluster-installation.xml
trunk/refman-5.1/mysql-cluster-installation.xml
Modified: trunk/refman-5.0/mysql-cluster-installation.xml
===================================================================
--- trunk/refman-5.0/mysql-cluster-installation.xml 2011-05-12 00:35:21 UTC (rev 26190)
+++ trunk/refman-5.0/mysql-cluster-installation.xml 2011-05-12 11:28:41 UTC (rev 26191)
Changed blocks: 16, Lines Added: 660, Lines Deleted: 521; 56138 bytes
@@ -136,10 +136,9 @@
possible to use host names in lieu of IP addresses in configuring
Cluster. Alternatively, you can use the <filename>hosts</filename>
file (typically <filename>/etc/hosts</filename> for Linux and
- other Unix-like operating systems,
- <filename>C:\WINDOWS\system32\drivers\etc\hosts</filename> on
- Windows, or your operating system's equivalent) for providing
- a means to do host lookup if such is available.
+ other Unix-like operating systems, or your operating system's
+ equivalent) for providing a means to do host lookup if such is
+ available.
</para>
</formalpara>
@@ -277,21 +276,13 @@
</formalpara>
<para>
- We also assume that you already know how to perform a minimal
- installation and configuration of the operating system with
- networking capability, or that you are able to obtain assistance in
- this elsewhere if needed.
+ For general information about installing MySQL, see
+ <xref linkend="installing"/>. For information about installation of
+ MySQL Cluster on Linux and other Unix-like operating systems, see
+ <xref linkend="mysql-cluster-install-linux"/>.
</para>
<para>
- For information relating to installation of MySQL Cluster on Linux
- and other Unix-like operating systems, see
- <xref linkend="mysql-cluster-install-linux"/>. For information
- relating to installation of MySQL Cluster on Windows operating
- systems, see <xref linkend="mysql-cluster-install-windows"/>.
- </para>
-
- <para>
For general information about MySQL Cluster hardware, software, and
networking requirements, see
<xref linkend="mysql-cluster-overview-requirements"/>.
@@ -299,210 +290,168 @@
<section id="mysql-cluster-install-linux">
- <title>MySQL Cluster Installation on Linux</title>
+ <title>Installing MySQL Cluster on Linux</title>
<indexterm>
<primary>installing MySQL Cluster</primary>
+ <secondary>Linux</secondary>
</indexterm>
<indexterm>
<primary>MySQL Cluster</primary>
- <secondary>installation</secondary>
+ <secondary>installation (Linux)</secondary>
</indexterm>
- <indexterm>
- <primary>Obtaining MySQL Cluster</primary>
- </indexterm>
+ <para>
+ This section covers installation of MySQL Cluster on Linux and
+ other Unix-like operating systems. While the next few sections
+ refer to a Linux operating system, the instructions and procedures
+ given there should be easily adaptable to other supported
+ Unix-like platforms.
+ </para>
- <indexterm>
- <primary>MySQL Cluster</primary>
- <secondary>obtaining</secondary>
- </indexterm>
-
<para>
- Each MySQL Cluster host computer running an SQL node must have
- installed on it a MySQL binary. For management nodes and data
- nodes, it is not necessary to install the MySQL server binary, but
- management nodes require the management server daemon
- (<command>ndb_mgmd</command>) and data nodes require the data node
- daemon (<command>ndbd</command>). It is also a good idea to
- install the management client (<command>ndb_mgm</command>) on the
- management server host. This section covers the steps necessary to
- install the correct binaries for each type of Cluster node.
+ Each MySQL Cluster host computer must have the correct executable
+ programs installed. A host running an SQL node must have installed
+ on it a MySQL Server binary (<command>mysqld</command>).
+ Management nodes require the management server daemon
+ (<command>ndb_mgmd</command>); data nodes require the data node
+ daemon (<command>ndbd</command>. It is not necessary to install
+ the MySQL Server binary on management node hosts and data node
+ hosts. It is recommended that you also install the management
+ client (<command>ndb_mgm</command>) on the management server host.
</para>
<para>
- Oracle provides precompiled binaries that support MySQL Cluster,
- and there is generally no need to compile these yourself. However,
- we also include information relating to installing a MySQL Cluster
- after building MySQL from source. For setting up a cluster using
- MySQL's binaries, the first step in the installation process
- for each cluster host is to download the file
- <filename>mysql-¤t-version;-pc-linux-gnu-i686.tar.gz</filename>
- from the <ulink url="&base-url-downloads;">MySQL downloads
- area</ulink>. We assume that you have placed it in each machine's
- <filename>/var/tmp</filename> directory. (If you do require a
- custom binary, see <xref linkend="installing-development-tree"/>.)
+ Installation of MySQL Cluster on Linux can be done using
+ precompiled binaries from Oracle (downloaded as a .tar.gz
+ archive), with RPM packages (also available from Oracle), or from
+ source code. All three of these installation methods are described
+ in the section that follow.
</para>
<para>
- RPMs are also available for both 32-bit and 64-bit Linux
- platforms. For a MySQL Cluster, three RPMs are required:
+ Regardless of the method used, it is still necessary following
+ installation of the MySQL Cluster binaries to create configuration
+ files for all cluster nodes, before you can start the cluster. See
+ <xref linkend="mysql-cluster-install-configuration"/>.
</para>
- <itemizedlist>
+ <section id="mysql-cluster-install-linux-binary">
- <listitem>
- <para>
- The <emphasis role="bold">Server</emphasis> RPM (for example,
- <filename>MySQL-Server-¤t-version;-0.glibc23.i386.rpm</filename>),
- which supplies the core files needed to run a MySQL Server.
- </para>
- </listitem>
+ <title>Installing a MySQL Cluster Binary Release on Linux</title>
- <listitem>
- <para>
- The <emphasis role="bold">NDB Cluster - Storage
- engine</emphasis> RPM (for example,
- <filename>MySQL-ndb-storage-¤t-version;-0.glibc23.i386.rpm</filename>),
- which supplies the MySQL Cluster data node binary
- (<command>ndbd</command>).
- </para>
- </listitem>
+ <indexterm>
+ <primary>installing MySQL Cluster</primary>
+ <secondary>Linux binary release</secondary>
+ </indexterm>
- <listitem>
- <para>
- The <emphasis role="bold">NDB Cluster - Storage engine
- management RPM</emphasis> (for example,
- <filename>MySQL-ndb-management-¤t-version;-0.glibc23.i386.rpm</filename>),
- which provides the MySQL Cluster management server binary
- (<command>ndb_mgmd</command>).
- </para>
- </listitem>
+ <indexterm>
+ <primary>MySQL Cluster</primary>
+ <secondary>installing binary release (Linux)</secondary>
+ </indexterm>
- </itemizedlist>
+ <para>
+ This section covers the steps necessary to install the correct
+ executables for each type of Cluster node from precompiled
+ binaries supplied by Oracle.
+ </para>
- <para>
- In addition, you should also obtain the <emphasis role="bold">NDB
- Cluster - Storage engine basic tools</emphasis> RPM (for example,
- <filename>MySQL-ndb-tools-¤t-version;-0.glibc23.i386.rpm</filename>),
- which supplies several useful applications for working with a
- MySQL Cluster. The most important of these is the MySQL Cluster
- management client (<command>ndb_mgm</command>). The
- <emphasis role="bold">NDB Cluster - Storage engine extra
- tools</emphasis> RPM (for example,
- <filename>MySQL-ndb-extra-¤t-version;-0.glibc23.i386.rpm</filename>)
- contains some additional testing and monitoring programs, but is
- not required to install a MySQL Cluster. (For more information
- about these additional programs, see
- <xref linkend="mysql-cluster-programs"/>.)
- </para>
+ <para>
+ For setting up a cluster using precompiled binaries, the first
+ step in the installation process for each cluster host is to
+ download the latest MySQL ¤t-series; binary archive from
+ the MySQL downloads page. We assume that you have placed this
+ file in each machine's <filename>/var/tmp</filename> directory.
+ (If you do require a custom binary, see
+ <xref linkend="installing-development-tree"/>.)
+ </para>
- <para>
- The MySQL version number in the RPM file names (shown here as
- <literal>¤t-version;</literal>) can vary according to the
- version which you are actually using. <emphasis>It is very
- important that all of the Cluster RPMs to be installed have the
- same MySQL version number</emphasis>. The <literal>glibc</literal>
- version number (if present—shown here as
- <literal>glibc23</literal>), and architecture designation (shown
- here as <literal>i386</literal>) should be appropriate to the
- machine on which the RPM is to be installed.
- </para>
+ <note>
+ <para>
+ After completing the installation, do not yet start any of the
+ binaries. We show you how to do so following the configuration
+ of the nodes (see
+ <xref linkend="mysql-cluster-install-configuration"/>).
+ </para>
+ </note>
- <para>
- See <xref linkend="linux-installation-rpm"/>, for general
- information about installing MySQL using RPMs supplied by Oracle.
- </para>
+ <formalpara>
- <para>
- After installing from RPM, you still need to configure the cluster
- as discussed in
- <xref linkend="mysql-cluster-install-configuration"/>.
- </para>
+ <title>Data nodes and SQL nodes</title>
- <note>
- <para>
- After completing the installation, do not yet start any of the
- binaries. We show you how to do so following the configuration
- of all nodes.
- </para>
- </note>
+ <para>
+ On each of the machines designated to host data nodes or SQL
+ nodes, perform the following steps as the system
+ <literal>root</literal> user:
+ </para>
- <formalpara>
+ </formalpara>
- <title>Data and SQL Node Installation: <filename>.tar.gz</filename> Binary</title>
+ <orderedlist>
- <para>
- On each of the machines designated to host data or SQL nodes,
- perform the following steps as the system
- <literal>root</literal> user:
+ <listitem>
+ <para>
+ Check your <filename>/etc/passwd</filename> and
+ <filename>/etc/group</filename> files (or use whatever tools
+ are provided by your operating system for managing users and
+ groups) to see whether there is already a
+ <literal>mysql</literal> group and <literal>mysql</literal>
+ user on the system. Some OS distributions create these as
+ part of the operating system installation process. If they
+ are not already present, create a new
+ <literal>mysql</literal> user group, and then add a
+ <literal>mysql</literal> user to this group:
+ </para>
- <orderedlist>
-
- <listitem>
- <para>
- Check your <filename>/etc/passwd</filename> and
- <filename>/etc/group</filename> files (or use whatever
- tools are provided by your operating system for managing
- users and groups) to see whether there is already a
- <literal>mysql</literal> group and
- <literal>mysql</literal> user on the system. Some OS
- distributions create these as part of the operating system
- installation process. If they are not already present,
- create a new <literal>mysql</literal> user group, and then
- add a <literal>mysql</literal> user to this group:
- </para>
-
<programlisting>
shell> <userinput>groupadd mysql</userinput>
shell> <userinput>useradd -g mysql mysql</userinput>
</programlisting>
- <para>
- The syntax for <command>useradd</command> and
- <command>groupadd</command> may differ slightly on
- different versions of Unix, or they may have different
- names such as <command>adduser</command> and
- <command>addgroup</command>.
- </para>
- </listitem>
+ <para>
+ The syntax for <command>useradd</command> and
+ <command>groupadd</command> may differ slightly on different
+ versions of Unix, or they may have different names such as
+ <command>adduser</command> and <command>addgroup</command>.
+ </para>
+ </listitem>
- <listitem>
- <para>
- Change location to the directory containing the downloaded
- file, unpack the archive, and create a symlink to the
- <filename>mysql</filename> directory named
- <filename>mysql</filename>. Note that the actual file and
- directory names vary according to the MySQL Cluster
- version number.
- </para>
+ <listitem>
+ <para>
+ Change location to the directory containing the downloaded
+ file, unpack the archive, and create a symlink to the
+ <filename>mysql</filename> directory named
+ <filename>mysql</filename>. Note that the actual file and
+ directory names vary according to the MySQL Cluster version
+ number.
+ </para>
<programlisting>
shell> <userinput>cd /var/tmp</userinput>
-shell> <userinput>tar -C /usr/local -xzvf mysql-¤t-version;-pc-linux-gnu-i686.tar.gz</userinput>
-shell> <userinput>ln -s /usr/local/mysql-¤t-version;-pc-linux-gnu-i686 /usr/local/mysql</userinput>
+shell> <userinput>tar -C /usr/local -xzvf mysql-cluster-gpl-&ndb-engine-current-7.1;-linux-i686-glibc23.tar.gz</userinput>
+shell> <userinput>ln -s /usr/local/mysql-cluster-gpl-&ndb-engine-current-7.1;-linux-i686-glibc23.tar.gz /usr/local/mysql</userinput>
</programlisting>
- </listitem>
+ </listitem>
- <listitem>
- <para>
- Change location to the <filename>mysql</filename>
- directory and run the supplied script for creating the
- system databases:
- </para>
+ <listitem>
+ <para>
+ Change location to the <filename>mysql</filename> directory
+ and run the supplied script for creating the system
+ databases:
+ </para>
<programlisting>
shell> <userinput>cd mysql</userinput>
shell> <userinput>scripts/mysql_install_db --user=mysql</userinput>
</programlisting>
- </listitem>
+ </listitem>
- <listitem>
- <para>
- Set the necessary permissions for the MySQL server and
- data directories:
- </para>
+ <listitem>
+ <para>
+ Set the necessary permissions for the MySQL server and data
+ directories:
+ </para>
<programlisting>
shell> <userinput>chown -R root .</userinput>
@@ -510,21 +459,21 @@
shell> <userinput>chgrp -R mysql .</userinput>
</programlisting>
- <para>
- Note that the data directory on each machine hosting a
- data node is <filename>/usr/local/mysql/data</filename>.
- This piece of information is essential when configuring
- the management node. (See
- <xref linkend="mysql-cluster-install-configuration"/>.)
- </para>
- </listitem>
+ <para>
+ Note that the data directory on each machine hosting a data
+ node is <filename>/usr/local/mysql/data</filename>. This
+ piece of information is essential when configuring the
+ management node. (See
+ <xref linkend="mysql-cluster-install-configuration"/>.)
+ </para>
+ </listitem>
- <listitem>
- <para>
- Copy the MySQL startup script to the appropriate
- directory, make it executable, and set it to start when
- the operating system is booted up:
- </para>
+ <listitem>
+ <para>
+ Copy the MySQL startup script to the appropriate directory,
+ make it executable, and set it to start when the operating
+ system is booted up:
+ </para>
<programlisting>
shell> <userinput>cp support-files/mysql.server /etc/rc.d/init.d/</userinput>
@@ -532,157 +481,55 @@
shell> <userinput>chkconfig --add mysql.server</userinput>
</programlisting>
- <para>
- (The startup scripts directory may vary depending on your
- operating system and version—for example, in some
- Linux distributions, it is
- <filename>/etc/init.d</filename>.)
- </para>
+ <para>
+ (The startup scripts directory may vary depending on your
+ operating system and version—for example, in some
+ Linux distributions, it is
+ <filename>/etc/init.d</filename>.)
+ </para>
- <para>
- Here we use Red Hat's <command>chkconfig</command> for
- creating links to the startup scripts; use whatever means
- is appropriate for this purpose on your operating system
- and distribution, such as <command>update-rc.d</command>
- on Debian.
- </para>
- </listitem>
+ <para>
+ Here we use Red Hat's <command>chkconfig</command> for
+ creating links to the startup scripts; use whatever means is
+ appropriate for this purpose on your operating system and
+ distribution, such as <command>update-rc.d</command> on
+ Debian.
+ </para>
+ </listitem>
- </orderedlist>
+ </orderedlist>
- Remember that the preceding steps must be performed separately
- on each machine where an SQL node is to reside.
- </para>
-
- </formalpara>
-
- <formalpara>
-
- <title>SQL node installation: RPM files</title>
-
<para>
- On each machine to be used for hosting a cluster SQL node,
- install the <emphasis role="bold">MySQL Server</emphasis> RPM by
- executing the following command as the system root user,
- replacing the name shown for the RPM as necessary to match the
- name of the RPM downloaded from the MySQL web site:
-
-<programlisting>
-shell> <userinput>rpm -Uhv MySQL-server-¤t-version;-0.glibc23.i386.rpm</userinput>
-</programlisting>
-
- This installs the MySQL server binary
- (<command>mysqld</command>) in the
- <filename>/usr/sbin</filename> directory, as well as all needed
- MySQL Server support files. It also installs the
- <command>mysql.server</command> and
- <command>mysqld_safe</command> startup scripts in
- <filename>/usr/share/mysql</filename> and
- <filename>/usr/bin</filename>, respectively. The RPM installer
- should take care of general configuration issues (such as
- creating the <literal>mysql</literal> user and group, if needed)
- automatically.
+ Remember that the preceding steps must be repeated on each
+ machine where an SQL node is to reside.
</para>
- </formalpara>
+ <formalpara>
- <formalpara>
+ <title>Management nodes</title>
- <title>SQL node installation: building from source</title>
+ <para>
+ Installation of the management node does not require the
+ <command>mysqld</command> binary. Only the MySQL Cluster
+ management server (<command>ndb_mgmd</command>) is required;
+ you most likely want to install the management client
+ (<command>ndb_mgm</command>) as well. Both of these binaries
+ also be found in the <filename>.tar.gz</filename> archive.
+ Again, we assume that you have placed this archive in
+ <filename>/var/tmp</filename>.
+ </para>
- <para>
- If you compile MySQL with clustering support (for example, by
- using the
- <command>BUILD/compile-<replaceable>platform_name</replaceable>-max</command>
- script appropriate to your platform), and perform the default
- installation (using <command>make install</command> as the root
- user), <command>mysqld</command> is placed in
- <filename>/usr/local/mysql/bin</filename>. Follow the steps
- given in <xref linkend="source-installation"/> to make
- <command>mysqld</command> ready for use. If you want to run
- multiple SQL nodes, you can use a copy of the same
- <command>mysqld</command> executable and its associated support
- files on several machines. The easiest way to do this is to copy
- the entire <filename>/usr/local/mysql</filename> directory and
- all directories and files contained within it to the other SQL
- node host or hosts, then repeat the steps from
- <xref linkend="source-installation"/> on each machine. If you
- configure the build with a nondefault
- <option role="configure">--prefix</option>, you need to adjust
- the directory accordingly.
- </para>
+ </formalpara>
- </formalpara>
-
- <formalpara id="mysql-cluster-install-linux-rpm">
-
- <title>Data node installation: RPM Files</title>
-
<para>
- On a computer that is to host a cluster data node it is
- necessary to install only the <emphasis role="bold">NDB Cluster
- - Storage engine</emphasis> RPM. To do so, copy this RPM to the
- data node host, and run the following command as the system root
- user, replacing the name shown for the RPM as necessary to match
- that of the RPM downloaded from the MySQL web site:
-
-<programlisting>
-shell> <userinput>rpm -Uhv MySQL-ndb-storage-¤t-version;-0.glibc23.i386.rpm</userinput>
-</programlisting>
-
- The previous command installs the MySQL Cluster data node binary
- (<command>ndbd</command>) in the <filename>/usr/sbin</filename>
- directory.
+ As system <literal>root</literal> (that is, after using
+ <command>sudo</command>, <command>su root</command>, or your
+ system's equivalent for temporarily assuming the system
+ administrator account's privileges), perform the following steps
+ to install <command>ndb_mgmd</command> and
+ <command>ndb_mgm</command> on the Cluster management node host:
</para>
- </formalpara>
-
- <formalpara>
-
- <title>Data node installation: building from source</title>
-
- <para>
- The only executable required on a data node host is
- <command>ndbd</command> (<command>mysqld</command>, for example,
- does not have to be present on the host machine). By default
- when doing a source build, this file is placed in the directory
- <filename>/usr/local/mysql/libexec</filename>. For installing on
- multiple data node hosts, only <command>ndbd</command> need be
- copied to the other host machine or machines. (This assumes that
- all data node hosts use the same architecture and operating
- system; otherwise you may need to compile separately for each
- different platform.) <command>ndbd</command> need not be in any
- particular location on the host's file system, as long as the
- location is known.
- </para>
-
- </formalpara>
-
- <formalpara>
-
- <title>Management node installation: <filename>.tar.gz</filename> binary</title>
-
- <para>
- Installation of the management node does not require the
- <command>mysqld</command> binary. Only the MySQL Cluster
- management server (<command>ndb_mgmd</command>) is required; you
- most likely want to install the management client
- (<command>ndb_mgm</command>) as well. Both of these binaries
- also be found in the <filename>.tar.gz</filename> archive.
- Again, we assume that you have placed this archive in
- <filename>/var/tmp</filename>.
- </para>
-
- </formalpara>
-
- <para>
- As system <literal>root</literal> (that is, after using
- <command>sudo</command>, <command>su root</command>, or your
- system's equivalent for temporarily assuming the system
- administrator account's privileges), perform the following steps
- to install <command>ndb_mgmd</command> and
- <command>ndb_mgm</command> on the Cluster management node host:
-
<orderedlist>
<listitem>
@@ -695,8 +542,8 @@
<programlisting>
shell> <userinput>cd /var/tmp</userinput>
-shell> <userinput>tar -zxvf mysql-¤t-version;-pc-linux-gnu-i686.tar.gz</userinput>
-shell> <userinput>cd mysql-¤t-version;-pc-linux-gnu-i686</userinput>
+shell> <userinput>tar -zxvf mysql-&mysql-cluster-current-7.1;-linux-i686-glibc23.tar.gz</userinput>
+shell> <userinput>cd mysql-&mysql-cluster-current-7.1;-linux-i686-glibc23</userinput>
shell> <userinput>cp bin/ndb_mgm* /usr/local/bin</userinput>
</programlisting>
@@ -722,79 +569,384 @@
</listitem>
</orderedlist>
- </para>
- <formalpara>
+ <para>
+ In <xref linkend="mysql-cluster-install-configuration"/>, we
+ create configuration files for all of the nodes in our example
+ MySQL Cluster.
+ </para>
- <title>Management node installation: RPM file</title>
+ </section>
+ <section id="mysql-cluster-install-linux-rpm">
+
+ <title>Installing MySQL Cluster from RPM</title>
+
+ <indexterm>
+ <primary>installing MySQL Cluster</primary>
+ <secondary>Linux RPM</secondary>
+ </indexterm>
+
+ <indexterm>
+ <primary>MySQL Cluster</primary>
+ <secondary>installing RPM (Linux)</secondary>
+ </indexterm>
+
<para>
- To install the MySQL Cluster management server, it is necessary
- only to use the <emphasis role="bold">NDB Cluster - Storage
- engine management</emphasis> RPM. Copy this RPM to the computer
- intended to host the management node, and then install it by
- running the following command as the system root user (replace
- the name shown for the RPM as necessary to match that of the
- <emphasis role="bold">Storage engine management</emphasis> RPM
- downloaded from the MySQL web site):
+ This section covers the steps necessary to install the correct
+ executables for each type of MySQL Cluster node using RPM
+ packages supplied by Oracle.
+ </para>
+ <para>
+ RPMs are available for both 32-bit and 64-bit Linux platforms.
+ For a MySQL Cluster, three RPMs are required:
+ </para>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ The <emphasis role="bold">Server</emphasis> RPM (for
+ example,
+ <filename>MySQL-server-¤t-version;-0.glibc23.i386.rpm</filename>),
+ which supplies the core files needed to run a MySQL Server.
+ </para>
+
+ <para>
+ If you do not have your own client application capable of
+ administering a MySQL server, you should also obtain and
+ install the <emphasis role="bold">Client</emphasis> RPM
+ (such as
+ <filename>MySQL-client-¤t-version;-0.sles10.i586.rpm</filename>).
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ The <emphasis role="bold">NDB Cluster - Storage
+ engine</emphasis> RPM (for example,
+ <filename>MySQL-ndb-storage-¤t-version;-0.glibc23.i386.rpm</filename>),
+ which supplies the MySQL Cluster data node binary
+ (<command>ndbd</command>).
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ The <emphasis role="bold">NDB Cluster - Storage engine
+ management RPM</emphasis> (for example,
+ <filename>MySQL-ndb-management-¤t-version;-0.glibc23.i386.rpm</filename>),
+ which provides the MySQL Cluster management server binary
+ (<command>ndb_mgmd</command>).
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ <para>
+ In addition, you should also obtain the
+ <emphasis role="bold">NDB Cluster - Storage engine basic
+ tools</emphasis> RPM (for example,
+ <filename>MySQL-ndb-tools-¤t-version;-0.glibc23.i386.rpm</filename>),
+ which supplies several useful applications for working with a
+ MySQL Cluster. The most important of these is the MySQL Cluster
+ management client (<command>ndb_mgm</command>). The
+ <emphasis role="bold">NDB Cluster - Storage engine extra
+ tools</emphasis> RPM (for example,
+ <filename>MySQL-ndb-extra-¤t-version;-0.glibc23.i386.rpm</filename>)
+ contains some additional testing and monitoring programs, but is
+ not required to install a MySQL Cluster. (For more information
+ about these additional programs, see
+ <xref linkend="mysql-cluster-programs"/>.)
+ </para>
+
+ <para>
+ The MySQL version number in the RPM file names (shown here as
+ <literal>¤t-version;</literal>) can vary according to the
+ version which you are actually using. <emphasis>It is very
+ important that all of the Cluster RPMs to be installed have the
+ same MySQL version number</emphasis>. The
+ <literal>glibc</literal> version number (if present—shown
+ here as <literal>glibc23</literal>), and architecture
+ designation (shown here as <literal>i386</literal>) should be
+ appropriate to the machine on which the RPM is to be installed.
+ </para>
+
+ <formalpara>
+
+ <title>Data nodes</title>
+
+ <para>
+ On a computer that is to host a cluster data node it is
+ necessary to install only the <emphasis role="bold">NDB
+ Cluster - Storage engine</emphasis> RPM. To do so, copy this
+ RPM to the data node host, and run the following command as
+ the system root user, replacing the name shown for the RPM as
+ necessary to match that of the RPM downloaded from the MySQL
+ web site:
+ </para>
+
+ </formalpara>
+
<programlisting>
+shell> <userinput>rpm -Uhv MySQL-ndb-storage-¤t-version;-0.glibc23.i386.rpm</userinput>
+</programlisting>
+
+ <para>
+ The previous command installs the MySQL Cluster data node binary
+ (<command>ndbd</command>) in the <filename>/usr/sbin</filename>
+ directory.
+ </para>
+
+ <formalpara>
+
+ <title>SQL nodes</title>
+
+ <para>
+ On each machine to be used for hosting a cluster SQL node,
+ install the <emphasis role="bold">Server</emphasis> RPM by
+ executing the following command as the system root user,
+ replacing the name shown for the RPM as necessary to match the
+ name of the RPM downloaded from the MySQL web site:
+ </para>
+
+ </formalpara>
+
+<programlisting>
+shell> <userinput>rpm -Uhv MySQL-server-¤t-version;-0.glibc23.i386.rpm</userinput>
+</programlisting>
+
+ <para>
+ This installs the MySQL server binary
+ (<command>mysqld</command>) in the
+ <filename>/usr/sbin</filename> directory, as well as all needed
+ MySQL Server support files. It also installs the
+ <command>mysql.server</command> and
+ <command>mysqld_safe</command> startup scripts in
+ <filename>/usr/share/mysql</filename> and
+ <filename>/usr/bin</filename>, respectively. The RPM installer
+ should take care of general configuration issues (such as
+ creating the <literal>mysql</literal> user and group, if needed)
+ automatically.
+ </para>
+
+ <note>
+ <para>
+ To administer the SQL node (MySQL server), you should also
+ install the <emphasis role="bold">Client</emphasis> RPM, as
+ shown here:
+ </para>
+
+<programlisting>
+shell> <userinput>rpm -Uhv MySQL-client-¤t-version;-0.sles10.i586.rpm</userinput>
+</programlisting>
+
+ <para>
+ This installs the <command>mysql</command> client program.
+ </para>
+ </note>
+
+ <formalpara>
+
+ <title>Management nodes</title>
+
+ <para>
+ To install the MySQL Cluster management server, it is
+ necessary only to use the <emphasis role="bold">NDB Cluster -
+ Storage engine management</emphasis> RPM. Copy this RPM to the
+ computer intended to host the management node, and then
+ install it by running the following command as the system root
+ user (replace the name shown for the RPM as necessary to match
+ that of the <emphasis role="bold">Storage engine
+ management</emphasis> RPM downloaded from the MySQL web site):
+ </para>
+
+ </formalpara>
+
+<programlisting>
shell> <userinput>rpm -Uhv MySQL-ndb-management-¤t-version;-0.glibc23.i386.rpm</userinput>
</programlisting>
+ <para>
This installs the management server binary
(<command>ndb_mgmd</command>) to the
<filename>/usr/sbin</filename> directory.
</para>
- </formalpara>
+ <para>
+ You should also install the <literal role="se">NDB</literal>
+ management client, which is supplied by the
+ <emphasis role="bold">Storage engine basic tools</emphasis> RPM.
+ Copy this RPM to the same computer as the management node, and
+ then install it by running the following command as the system
+ root user (again, replace the name shown for the RPM as
+ necessary to match that of the <emphasis role="bold">Storage
+ engine basic tools</emphasis> RPM downloaded from the MySQL web
+ site):
+ </para>
- <para>
- You should also install the <literal role="se">NDB</literal>
- management client, which is supplied by the
- <emphasis role="bold">Storage engine basic tools</emphasis> RPM.
- Copy this RPM to the same computer as the management node, and
- then install it by running the following command as the system
- root user (again, replace the name shown for the RPM as necessary
- to match that of the <emphasis role="bold">Storage engine basic
- tools</emphasis> RPM downloaded from the MySQL web site):
+<programlisting>
+shell> <userinput>rpm -Uhv MySQL-ndb-tools-¤t-version;-0.sles10.i586.rpm</userinput>
+</programlisting>
+ <para>
+ The <emphasis role="bold">Storage engine basic tools</emphasis>
+ RPM installs the MySQL Cluster management client
+ (<command>ndb_mgm</command>) to the
+ <filename>/usr/bin</filename> directory.
+ </para>
+
+ <note>
+ <para>
+ You can also install the <emphasis role="bold">Cluster storage
+ engine extra tools</emphasis> RPM, if you wish, as shown here:
+ </para>
+
<programlisting>
-shell> <userinput>rpm -Uhv MySQL-Cluster-gpl-tools-&ndb-engine-current-6.3;-0.sles10.i586.rpm</userinput>
+shell> <userinput>rpm -Uhv MySQL-ndb-extra-¤t-version;-0.sles10.i586.rpm</userinput>
</programlisting>
- The <emphasis role="bold">Storage engine basic tools</emphasis>
- RPM installs the MySQL Cluster management client
- (<command>ndb_mgm</command>) to the <filename>/usr/bin</filename>
- directory.
- </para>
+ <para>
+ You may find the extra tools useful; however the
+ <emphasis role="bold">Cluster storage engine extra
+ tools</emphasis> RPM is <emphasis>not</emphasis> required to
+ install a working MySQL Cluster.
+ </para>
+ </note>
- <formalpara>
+ <para>
+ See <xref linkend="linux-installation-rpm"/>, for general
+ information about installing MySQL using RPMs supplied by
+ Oracle.
+ </para>
- <title>Management node installation: building from source</title>
+ <para>
+ After installing from RPM, you still need to configure the
+ cluster as discussed in
+ <xref linkend="mysql-cluster-install-configuration"/>.
+ </para>
+ </section>
+
+ <section id="mysql-cluster-install-linux-source">
+
+ <title>Building MySQL Cluster from Source on Linux</title>
+
+ <indexterm>
+ <primary>installing MySQL Cluster</primary>
+ <secondary>Linux source release</secondary>
+ </indexterm>
+
+ <indexterm>
+ <primary>MySQL Cluster</primary>
+ <secondary>installing from source (Linux)</secondary>
+ </indexterm>
+
<para>
- When building from source and running the default <command>make
- install</command>, the management server binary
- (<command>ndb_mgmd</command>) is placed in
- <filename>/usr/local/mysql/libexec</filename>, while the
- management client binary (<command>ndb_mgm</command>) can be
- found in <filename>/usr/local/mysql/bin</filename>. Only
- <command>ndb_mgmd</command> is required to be present on a
- management node host; however, it is also a good idea to have
- <command>ndb_mgm</command> present on the same host machine.
- Neither of these executables requires a specific location on the
- host machine's file system.
+ This section provides information about compiling MySQL Cluster
+ on Linux and other Unix-like platforms.To build MySQL Cluster,
+ you need the MySQL ¤t-series; source archive available
+ from <uri>&base-url-downloads;</uri>. Building MySQL Cluster
+ from source is similar to building the standard MySQL Server,
+ although it differs in a few key respects discussed here. For
+ general information about building MySQL from source, see
+ <xref linkend="source-installation"/>.
</para>
- </formalpara>
+ <para>
+ In addition to any other <command>configure</command> options
+ you wish to use, be sure to include
+ <option>--with-ndbcluster</option>. This option causes the
+ binaries for the management nodes, data nodes, and other MySQL
+ Cluster programs to be built; it also causes
+ <command>mysqld</command> to be compiled with
+ <literal role="se">NDB</literal> storage engine support.
+ </para>
- <para>
- In <xref linkend="mysql-cluster-install-configuration"/>, we
- create configuration files for all of the nodes in our example
- Cluster.
- </para>
+ <para>
+ After you have run <command>make && make
+ install</command> (or your system's equivalent), the result
+ is similar to what is obtained by unpacking a precompiled binary
+ to the same location. However, the layout can differ. These
+ differences are covered in the next few paragraphs.
+ </para>
+ <formalpara>
+
+ <title>Management nodes</title>
+
+ <para>
+ When building from source and running the default
+ <command>make install</command>, the management server binary
+ (<command>ndb_mgmd</command>) is placed in
+ <filename>/usr/local/mysql/libexec</filename>, while the
+ management client binary (<command>ndb_mgm</command>) can be
+ found in <filename>/usr/local/mysql/bin</filename>. Only
+ <command>ndb_mgmd</command> is required to be present on a
+ management node host; however, it is also a good idea to have
+ <command>ndb_mgm</command> present on the same host machine.
+ Neither of these executables requires a specific location on
+ the host machine's file system.
+ </para>
+
+ </formalpara>
+
+ <formalpara>
+
+ <title>Data nodes</title>
+
+ <para>
+ The only executable required on a data node host is
+ <command>ndbd</command> (<command>mysqld</command>, for
+ example, does not have to be present on the host machine). By
+ default when doing a source build, this file is placed in the
+ directory <filename>/usr/local/mysql/libexec</filename>. For
+ installing on multiple data node hosts, only
+ <command>ndbd</command> need be copied to the other host
+ machine or machines. (This assumes that all data node hosts
+ use the same architecture and operating system; otherwise you
+ may need to compile separately for each different platform.)
+ <command>ndbd</command> need not be in any particular location
+ on the host's file system, as long as the location is known.
+ </para>
+
+ </formalpara>
+
+ <formalpara>
+
+ <title>SQL nodes</title>
+
+ <para>
+ If you compile MySQL with clustering support, and perform the
+ default installation (using <command>make install</command> as
+ the system <literal>root</literal> user),
+ <command>mysqld</command> is placed in
+ <filename>/usr/local/mysql/bin</filename>. Follow the steps
+ given in <xref linkend="source-installation"/> to make
+ <command>mysqld</command> ready for use. If you want to run
+ multiple SQL nodes, you can use a copy of the same
+ <command>mysqld</command> executable and its associated
+ support files on several machines. The easiest way to do this
+ is to copy the entire <filename>/usr/local/mysql</filename>
+ directory and all directories and files contained within it to
+ the other SQL node host or hosts, then repeat the steps from
+ <xref linkend="source-installation"/> on each machine. If you
+ configure the build with a nondefault
+ <option role="configure">--prefix</option>, you need to adjust
+ the directory accordingly.
+ </para>
+
+ </formalpara>
+
+ <para>
+ In <xref linkend="mysql-cluster-install-configuration"/>, we
+ create configuration files for all of the nodes in our example
+ MySQL Cluster.
+ </para>
+
+ </section>
+
</section>
<section id="mysql-cluster-install-configuration">
@@ -851,18 +1003,20 @@
</itemizedlist>
- <para>
- <emphasis role="bold">Configuring the Storage and SQL
- Nodes</emphasis>
- </para>
+ <formalpara>
- <para>
- The <filename>my.cnf</filename> file needed for the data nodes is
- fairly simple. The configuration file should be located in the
- <filename>/etc</filename> directory and can be edited using any
- text editor. (Create the file if it does not exist.) For example:
- </para>
+ <title>Configuring the data nodes and SQL nodes</title>
+ <para>
+ The <filename>my.cnf</filename> file needed for the data nodes
+ is fairly simple. The configuration file should be located in
+ the <filename>/etc</filename> directory and can be edited using
+ any text editor. (Create the file if it does not exist.) For
+ example:
+ </para>
+
+ </formalpara>
+
<programlisting>
shell> <userinput>vi /etc/my.cnf</userinput>
</programlisting>
@@ -1046,7 +1200,7 @@
<para>
<command>ndb_mgmd</command> must be told where to find its
configuration file, using the <option>-f</option> or
- <option>--config-file</option> option. (See
+ <option role="ndb_mgmd">--config-file</option> option. (See
<xref linkend="mysql-cluster-programs-ndb-mgmd"/>, for
details.)
</para>
@@ -1157,9 +1311,9 @@
</indexterm>
<para>
- Working with data in MySQL Cluster is not much different from
- doing so in MySQL without Cluster. There are two points to keep in
- mind:
+ Working with database tables and data in MySQL Cluster is not much
+ different from doing so in standard MySQL. There are two key
+ points to keep in mind:
</para>
<itemizedlist>
@@ -1190,21 +1344,14 @@
<listitem>
<para>
- Each <literal role="se">NDBCLUSTER</literal> table
- <emphasis>must</emphasis> have a primary key. If no primary
- key is defined by the user when a table is created, the
- <literal role="se">NDBCLUSTER</literal> storage engine
- automatically generates a hidden one.
+ Every <literal role="se">NDBCLUSTER</literal> table has a
+ primary key. If no primary key is defined by the user when a
+ table is created, the <literal role="se">NDBCLUSTER</literal>
+ storage engine automatically generates a hidden one. Such a
+ key takes up space just as does any other table index. (It is
+ not uncommon to encounter problems due to insufficient memory
+ for accommodating these automatically created indexes.)
</para>
-
- <note>
- <para>
- This hidden key takes up space just as does any other table
- index. It is not uncommon to encounter problems due to
- insufficient memory for accommodating these automatically
- created indexes.)
- </para>
- </note>
</listitem>
</itemizedlist>
@@ -1328,19 +1475,21 @@
instructions accordingly.
</para>
- <para>
- It is important to note that
- <literal role="se">NDBCLUSTER</literal> in MySQL ¤t-series;
- does not support autodiscovery of databases. (See
- <xref linkend="mysql-cluster-limitations"/>.) This means that,
- once the <literal>world</literal> database and its tables have
- been created on one data node, you need to issue the
- <literal>CREATE DATABASE world</literal> statement (beginning with
- MySQL 5.0.2, you may use <literal>CREATE SCHEMA world</literal>
- instead), followed by <literal role="stmt" condition="flush">FLUSH
- TABLES</literal> on each SQL node in the cluster. This causes the
- node to recognize the database and read its table definitions.
- </para>
+ <note>
+ <para>
+ <literal role="se">NDBCLUSTER</literal> in MySQL
+ ¤t-series; does not support autodiscovery of databases.
+ (See <xref linkend="mysql-cluster-limitations"/>.) This means
+ that, once the <literal>world</literal> database and its tables
+ have been created on one data node, you need to issue the
+ <literal>CREATE DATABASE world</literal> statement (beginning
+ with MySQL 5.0.2, you may use <literal>CREATE SCHEMA
+ world</literal> instead), followed by
+ <literal role="stmt" condition="flush">FLUSH TABLES</literal> on
+ each SQL node in the cluster. This causes the node to recognize
+ the database and read its table definitions.
+ </para>
+ </note>
<para>
Running <literal role="stmt">SELECT</literal> queries on the SQL
@@ -1436,7 +1585,7 @@
<html>
<head>
<meta http-equiv="Content-Type"
- content="text/html; charset=iso-8859-1">
+ content="text/html; charset=iso-8859-1">
<title>SIMPLE mysqli SELECT</title>
</head>
<body>
@@ -1566,6 +1715,13 @@
<listitem>
<para>
+ Use the <command>ndb_mgm</command> client to verify that both
+ data nodes have started successfully.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
On the SQL host (<literal>192.168.0.20</literal>):
</para>
@@ -1620,8 +1776,10 @@
</para>
<para>
- This section remains in development, and continues to be updated
- and expanded.
+ For more information about upgrading or downgrading between MySQL
+ Cluster releases, or between MySQL Cluster releases and mainline
+ MySQL releases, see the changelogs relating to the applicable
+ MySQL Cluster versions.
</para>
<section id="mysql-cluster-rolling-restart">
@@ -1666,144 +1824,125 @@
<para>
There are a number of reasons why a rolling restart might be
- desirable:
+ desirable. These are described in the next few paragraphs.
</para>
- <itemizedlist>
+ <formalpara>
- <listitem>
- <formalpara>
+ <title>Cluster configuration change</title>
- <title>Cluster configuration change</title>
+ <indexterm>
+ <primary>MySQL Cluster</primary>
+ <secondary>configuration changes</secondary>
+ </indexterm>
- <indexterm>
- <primary>MySQL Cluster</primary>
- <secondary>configuration changes</secondary>
- </indexterm>
+ <para>
+ To make a change in the cluster's configuration, such as
+ adding an SQL node to the cluster, or setting a configuration
+ parameter to a new value.
+ </para>
- <para>
- To make a change in the cluster's configuration, such
- as adding an SQL node to the cluster, or setting a
- configuration parameter to a new value.
- </para>
+ </formalpara>
- </formalpara>
- </listitem>
+ <formalpara>
- <listitem>
- <formalpara>
+ <title>Cluster software upgrade/downgrade</title>
- <title>Cluster software upgrade/downgrade</title>
+ <para>
+ To upgrade the cluster to a newer version of the MySQL Cluster
+ software (or to downgrade it to an older version). This is
+ usually referred to as a <quote>rolling upgrade</quote> (or
+ <quote>rolling downgrade</quote>, when reverting to an older
+ version of MySQL Cluster).
+ </para>
- <para>
- To upgrade the cluster to a newer version of the MySQL
- Cluster software (or to downgrade it to an older version).
- This is usually referred to as a <quote>rolling
- upgrade</quote> (or <quote>rolling downgrade</quote>, when
- reverting to an older version of MySQL Cluster).
- </para>
+ </formalpara>
- </formalpara>
- </listitem>
+ <formalpara>
- <listitem>
- <formalpara>
+ <title>Change on node host</title>
- <title>Change on node host</title>
+ <para>
+ To make changes in the hardware or operating system on which
+ one or more cluster nodes are running.
+ </para>
- <para>
- To make changes in the hardware or operating system on
- which one or more cluster nodes are running.
- </para>
+ </formalpara>
- </formalpara>
- </listitem>
+ <formalpara>
- <listitem>
- <formalpara>
+ <title>Cluster reset</title>
- <title>Cluster reset</title>
+ <indexterm>
+ <primary>MySQL Cluster</primary>
+ <secondary>resetting</secondary>
+ </indexterm>
- <indexterm>
- <primary>MySQL Cluster</primary>
- <secondary>resetting</secondary>
- </indexterm>
+ <para>
+ To reset the cluster because it has reached an undesirable
+ state. In such cases it is often desirable to reload the data
+ and metadata of one or more data nodes. This can be done 1 of
+ 3 ways:
+ </para>
- <para>
- To reset the cluster because it has reached an undesirable
- state. In such cases it is often desirable to reload the
- data and metadata of one or more data nodes. This can be
- done 1 of 3 ways:
+ </formalpara>
- <itemizedlist>
+ <itemizedlist>
- <listitem>
- <para>
- Start each data node process
- (<command>ndbd</command>, or possibly
- <command>ndbmtd</command> in MySQL Cluster NDB 7.0
- and later) with the
- <option role="ndbd">--initial</option> option, which
- forces the data node to clear its filesystem and
- reload data and metadata from the other data nodes.
- </para>
- </listitem>
+ <listitem>
+ <para>
+ Start each data node process (<command>ndbd</command>) with
+ the <option role="ndbd">--initial</option> option, which
+ forces the data node to clear its filesystem and reload data
+ and metadata from the other data nodes.
+ </para>
+ </listitem>
- <listitem>
- <para>
- Create a backup using the <command>ndb_mgm</command>
- client <literal>BACKUP</literal> command prior to
- performing the restart. Following the upgrade,
- restore the node or nodes using
- <command>ndb_restore</command>.
- </para>
+ <listitem>
+ <para>
+ Create a backup using the <command>ndb_mgm</command> client
+ <literal>BACKUP</literal> command prior to performing the
+ restart. Following the upgrade, restore the node or nodes
+ using <command>ndb_restore</command>.
+ </para>
- <para>
- See <xref linkend="mysql-cluster-backup"/>, and
- <xref linkend="mysql-cluster-programs-ndb-restore"/>,
- for more information.
- </para>
- </listitem>
-
- <listitem>
- <para>
- Use <command>mysqldump</command> (see
- <xref linkend="mysqldump"/>) to create a backup
- prior to the upgrade; afterward, restore the dump
- using
- <literal role="stmt" condition="load-data">LOAD DATA
- INFILE</literal>.
- </para>
- </listitem>
-
- </itemizedlist>
- </para>
-
- </formalpara>
+ <para>
+ See <xref linkend="mysql-cluster-backup"/>, and
+ <xref linkend="mysql-cluster-programs-ndb-restore"/>, for
+ more information.
+ </para>
</listitem>
<listitem>
- <formalpara>
+ <para>
+ Use <command>mysqldump</command> (see
+ <xref linkend="mysqldump"/>) to create a backup prior to the
+ upgrade; afterward, restore the dump using
+ <literal role="stmt" condition="load-data">LOAD DATA
+ INFILE</literal>.
+ </para>
+ </listitem>
- <title>Freeing of resources</title>
+ </itemizedlist>
- <indexterm>
- <primary>MySQL Cluster</primary>
- <secondary>memory usage and recovery</secondary>
- </indexterm>
+ <formalpara>
- <para>
- To permit memory allocated to a table by successive
- <literal role="stmt">INSERT</literal> and
- <literal role="stmt">DELETE</literal> operations to be
- freed for re-use by other MySQL Cluster tables.
- </para>
+ <title>Freeing of resources</title>
- </formalpara>
- </listitem>
+ <indexterm>
+ <primary>MySQL Cluster</primary>
+ <secondary>memory usage and recovery</secondary>
+ </indexterm>
- </itemizedlist>
+ <para>
+ To permit memory allocated to a table by successive
+ <literal role="stmt">INSERT</literal> and
+ <literal role="stmt">DELETE</literal> operations to be freed
+ for re-use by other MySQL Cluster tables.
+ </para>
+ </formalpara>
+
<para>
The process for performing a rolling restart may be generalized
as follows:
Modified: trunk/refman-5.1/mysql-cluster-installation.xml
===================================================================
--- trunk/refman-5.1/mysql-cluster-installation.xml 2011-05-12 00:35:21 UTC (rev 26190)
+++ trunk/refman-5.1/mysql-cluster-installation.xml 2011-05-12 11:28:41 UTC (rev 26191)
Changed blocks: 10, Lines Added: 610, Lines Deleted: 501; 58216 bytes
@@ -277,21 +277,15 @@
</formalpara>
<para>
- We also assume that you already know how to perform a minimal
- installation and configuration of the operating system with
- networking capability, or that you are able to obtain assistance in
- this elsewhere if needed.
+ For general information about installing MySQL, see
+ <xref linkend="installing"/>. For information about installation of
+ MySQL Cluster on Linux and other Unix-like operating systems, see
+ <xref linkend="mysql-cluster-install-linux"/>. For information about
+ installation of MySQL Cluster on Windows operating systems, see
+ <xref linkend="mysql-cluster-install-windows"/>.
</para>
<para>
- For information relating to installation of MySQL Cluster on Linux
- and other Unix-like operating systems, see
- <xref linkend="mysql-cluster-install-linux"/>. For information
- relating to installation of MySQL Cluster on Windows operating
- systems, see <xref linkend="mysql-cluster-install-windows"/>.
- </para>
-
- <para>
For general information about MySQL Cluster hardware, software, and
networking requirements, see
<xref linkend="mysql-cluster-overview-requirements"/>.
@@ -301,284 +295,182 @@
<title>Installing MySQL Cluster on Linux</title>
- <para>
- The next few sections refer to a Linux operating system, but the
- instructions and procedures given there should be easily adaptable
- to other supported Unix-like operating systems.
- </para>
-
- <para>
- Beginning with MySQL Cluster NDB 7.1.3, MySQL Cluster is also
- supported for production use on Windows operating systems; for
- basic setup instructions specific to Windows, see
- <xref linkend="mysql-cluster-install-windows"/>.
- </para>
-
<indexterm>
<primary>installing MySQL Cluster</primary>
+ <secondary>Linux</secondary>
</indexterm>
<indexterm>
<primary>MySQL Cluster</primary>
- <secondary>installation</secondary>
+ <secondary>installation (Linux)</secondary>
</indexterm>
- <indexterm>
- <primary>Obtaining MySQL Cluster</primary>
- </indexterm>
-
- <indexterm>
- <primary>MySQL Cluster</primary>
- <secondary>obtaining</secondary>
- </indexterm>
-
<para>
- Each MySQL Cluster host computer running an SQL node must have
- installed on it a MySQL binary. For management nodes and data
- nodes, it is not necessary to install the MySQL server binary, but
- management nodes require the management server daemon
- (<command>ndb_mgmd</command>) and data nodes require the data node
- daemon (<command>ndbd</command>; in MySQL Cluster NDB 7.0 and
- later, you can use <command>ndbmtd</command> instead). It is also
- a good idea to install the management client
- (<command>ndb_mgm</command>) on the management server host. This
- section covers the steps necessary to install the correct binaries
- for each type of Cluster node.
+ This section covers installation of MySQL Cluster on Linux and
+ other Unix-like operating systems. While the next few sections
+ refer to a Linux operating system, the instructions and procedures
+ given there should be easily adaptable to other supported
+ Unix-like platforms.
</para>
<para>
- Oracle provides precompiled binaries that support MySQL Cluster.
- However, we also include information relating to installing a
- MySQL Cluster after building MySQL from source. For setting up a
- cluster using MySQL's binaries, the first step in the
- installation process for each cluster host is to download the
- latest MySQL Cluster NDB 6.3, MySQL Cluster NDB 7.0, or MySQL
- Cluster NDB 7.1 binary archive
- (<filename>mysql-cluster-gpl-&ndb-engine-current-6.3;-linux-i686-glibc23.tar.gz</filename>,
- <filename>mysql-cluster-gpl-&ndb-engine-current-7.0;-linux-i686-glibc23.tar.gz</filename>,
- or
- <filename>mysql-cluster-gpl-&ndb-engine-current-7.1;-linux-i686-glibc23.tar.gz</filename>,
- respectively) from the
- <ulink url="&base-url-cluster-downloads;">MySQL Cluster downloads
- area</ulink>. We assume that you have placed this file in each
- machine's <filename>/var/tmp</filename> directory. (If you do
- require a custom binary, see
- <xref linkend="installing-development-tree"/>.)
+ Beginning with MySQL Cluster NDB 7.1.3, MySQL Cluster is also
+ supported for production use on Windows operating systems; for
+ installation and setup instructions specific to Windows, see
+ <xref linkend="mysql-cluster-install-windows"/>.
</para>
<para>
- When compiling MySQL Cluster NDB 7.0 or later from source, no
- special options are required for building multi-threaded data node
- binaries. On Unix platforms, configuring the build with any of the
- options <option>--plugins=ndbcluster</option>,
- <option>--plugins=max</option>, or,
- <option>--plugins=max-no-innodb</option> causes
- <command>ndbmtd</command> to be built automatically; <command>make
- install</command> places the <command>ndbmtd</command> binary in
- the <filename>libexec</filename> directory along with
- <command>mysqld</command>, <command>ndbd</command>, and
- <command>ndb_mgm</command>.
+ Each MySQL Cluster host computer must have the correct executable
+ programs installed. A host running an SQL node must have installed
+ on it a MySQL Server binary (<command>mysqld</command>).
+ Management nodes require the management server daemon
+ (<command>ndb_mgmd</command>); data nodes require the data node
+ daemon (<command>ndbd</command>; in MySQL Cluster NDB 7.0 and
+ later, you can use <command>ndbmtd</command> instead. It is not
+ necessary to install the MySQL Server binary on management node
+ hosts and data node hosts. It is recommended that you also install
+ the management client (<command>ndb_mgm</command>) on the
+ management server host.
</para>
<para>
- Prior to MySQL Cluster NDB 7.1.9, MySQL Cluster was not compatible
- with the <literal role="se">InnoDB</literal> Plugin; in earlier
- MySQL Cluster releases, only the version of
- <literal role="se">InnoDB</literal> supplied with the MySQL Server
- could be used. Beginning with MySQL Cluster NDB 7.1.9, you can
- build MySQL Cluster with <literal role="se">InnoDB</literal>
- storage engine or plugin support using the appropriate
- <option role="configure">--with-plugins</option> option for
- <command>configure</command>.
+ Installation of MySQL Cluster on Linux can be done using
+ precompiled binaries from Oracle (downloaded as a .tar.gz
+ archive), with RPM packages (also available from Oracle), or from
+ source code. All three of these installation methods are described
+ in the section that follow.
</para>
<para>
- RPMs are also available for both 32-bit and 64-bit Linux
- platforms. For a MySQL Cluster, three RPMs are required:
+ Regardless of the method used, it is still necessary following
+ installation of the MySQL Cluster binaries to create configuration
+ files for all cluster nodes, before you can start the cluster. See
+ <xref linkend="mysql-cluster-install-configuration"/>.
</para>
- <itemizedlist>
+ <section id="mysql-cluster-install-linux-binary">
- <listitem>
- <para>
- The <emphasis role="bold">Server</emphasis> RPM (for example,
- <filename>MySQL-Cluster-gpl-server-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
- <filename>MySQL-Cluster-gpl-server-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
- or
- <filename>MySQL-Cluster-gpl-server-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>),
- which supplies the core files needed to run a MySQL Server
- with <literal role="se">NDBCLUSTER</literal> storage engine
- support (that is, as a MySQL Cluster SQL node).
- </para>
+ <title>Installing a MySQL Cluster Binary Release on Linux</title>
- <para>
- If you do not have your own client application capable of
- administering a MySQL server, you should also obtain and
- install the <emphasis role="bold">Client</emphasis> RPM (for
- example,
- <filename>MySQL-Cluster-gpl-client-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
- <filename>MySQL-Cluster-gpl-client-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
- or
- <filename>MySQL-Cluster-gpl-client-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>).
- </para>
- </listitem>
+ <indexterm>
+ <primary>installing MySQL Cluster</primary>
+ <secondary>Linux binary release</secondary>
+ </indexterm>
- <listitem>
- <para>
- The <emphasis role="bold">Cluster storage engine</emphasis>
- RPM (for example,
- <filename>MySQL-Cluster-gpl-storage-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
- <filename>MySQL-Cluster-gpl-storage-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
- or
- <filename>MySQL-Cluster-gpl-storage-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>),
- which supplies the MySQL Cluster data node binary
- (<command>ndbd</command>).
- </para>
- </listitem>
+ <indexterm>
+ <primary>MySQL Cluster</primary>
+ <secondary>installing binary release (Linux)</secondary>
+ </indexterm>
- <listitem>
+ <para>
+ This section covers the steps necessary to install the correct
+ executables for each type of Cluster node from precompiled
+ binaries supplied by Oracle.
+ </para>
+
+ <para>
+ For setting up a cluster using precompiled binaries, the first
+ step in the installation process for each cluster host is to
+ download the latest MySQL Cluster NDB 6.3, MySQL Cluster NDB
+ 7.0, or MySQL Cluster NDB 7.1 binary archive
+ (<filename>mysql-cluster-gpl-&ndb-engine-current-6.3;-linux-i686-glibc23.tar.gz</filename>,
+ <filename>mysql-cluster-gpl-&ndb-engine-current-7.0;-linux-i686-glibc23.tar.gz</filename>,
+ or
+ <filename>mysql-cluster-gpl-&ndb-engine-current-7.1;-linux-i686-glibc23.tar.gz</filename>,
+ respectively) from the
+ <ulink url="&base-url-cluster-downloads;">MySQL Cluster
+ downloads area</ulink>. We assume that you have placed this file
+ in each machine's <filename>/var/tmp</filename> directory. (If
+ you do require a custom binary, see
+ <xref linkend="installing-development-tree"/>.)
+ </para>
+
+ <note>
<para>
- The <emphasis role="bold">Cluster storage engine management
- RPM</emphasis> (for example,
- <filename>MySQL-Cluster-gpl-management-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
- <filename>MySQL-Cluster-gpl-management-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
- or
- <filename>MySQL-Cluster-gpl-management-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>)
- which provides the MySQL Cluster management server binary
- (<command>ndb_mgmd</command>).
+ After completing the installation, do not yet start any of the
+ binaries. We show you how to do so following the configuration
+ of the nodes (see
+ <xref linkend="mysql-cluster-install-configuration"/>).
</para>
- </listitem>
+ </note>
- </itemizedlist>
+ <formalpara>
- <para>
- In addition, you should also obtain the <emphasis role="bold">NDB
- Cluster - Storage engine basic tools</emphasis> RPM (for example,
- <filename>MySQL-Cluster-gpl-tools-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
- <filename>MySQL-Cluster-gpl-tools-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
- or
- <filename>MySQL-Cluster-gpl-tools-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>),
- which supplies several useful applications for working with a
- MySQL Cluster. The most important of these is the MySQL Cluster
- management client (<command>ndb_mgm</command>). The
- <emphasis role="bold">NDB Cluster - Storage engine extra
- tools</emphasis> RPM (for example,
- <filename>MySQL-Cluster-gpl-extra-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
- <filename>MySQL-Cluster-gpl-extra-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
- or
- <filename>MySQL-Cluster-gpl-extra-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>)
- contains some additional testing and monitoring programs, but is
- not required to install a MySQL Cluster. (For more information
- about these additional programs, see
- <xref linkend="mysql-cluster-programs"/>.)
- </para>
+ <title>Data nodes and SQL nodes</title>
- <para>
- The MySQL Cluster version number in the RPM file names (shown here
- as <literal>&ndb-engine-current-6.3;</literal>,
- <literal>&ndb-engine-current-7.0;</literal>, or
- <literal>&ndb-engine-current-7.1;</literal>) can vary according to
- the version which you are actually using. <emphasis>It is very
- important that all of the Cluster RPMs to be installed have the
- same version number</emphasis>. The <literal>glibc</literal>
- version number (if present), and architecture designation (shown
- here as <literal>i586</literal>) should be appropriate to the
- machine on which the RPM is to be installed.
- </para>
+ <para>
+ On each of the machines designated to host data nodes or SQL
+ nodes, perform the following steps as the system
+ <literal>root</literal> user:
+ </para>
- <para>
- See <xref linkend="linux-installation-rpm"/>, for general
- information about installing MySQL using RPMs supplied by Oracle.
- </para>
+ </formalpara>
- <para>
- After installing from RPM, you still need to configure the cluster
- as discussed in
- <xref linkend="mysql-cluster-install-configuration"/>.
- </para>
+ <orderedlist>
- <note>
- <para>
- After completing the installation, do not yet start any of the
- binaries. We show you how to do so following the configuration
- of all nodes.
- </para>
- </note>
+ <listitem>
+ <para>
+ Check your <filename>/etc/passwd</filename> and
+ <filename>/etc/group</filename> files (or use whatever tools
+ are provided by your operating system for managing users and
+ groups) to see whether there is already a
+ <literal>mysql</literal> group and <literal>mysql</literal>
+ user on the system. Some OS distributions create these as
+ part of the operating system installation process. If they
+ are not already present, create a new
+ <literal>mysql</literal> user group, and then add a
+ <literal>mysql</literal> user to this group:
+ </para>
- <formalpara>
-
- <title>Data and SQL Node Installation: <filename>.tar.gz</filename> Binary</title>
-
- <para>
- On each of the machines designated to host data or SQL nodes,
- perform the following steps as the system
- <literal>root</literal> user:
-
- <orderedlist>
-
- <listitem>
- <para>
- Check your <filename>/etc/passwd</filename> and
- <filename>/etc/group</filename> files (or use whatever
- tools are provided by your operating system for managing
- users and groups) to see whether there is already a
- <literal>mysql</literal> group and
- <literal>mysql</literal> user on the system. Some OS
- distributions create these as part of the operating system
- installation process. If they are not already present,
- create a new <literal>mysql</literal> user group, and then
- add a <literal>mysql</literal> user to this group:
- </para>
-
<programlisting>
shell> <userinput>groupadd mysql</userinput>
shell> <userinput>useradd -g mysql mysql</userinput>
</programlisting>
- <para>
- The syntax for <command>useradd</command> and
- <command>groupadd</command> may differ slightly on
- different versions of Unix, or they may have different
- names such as <command>adduser</command> and
- <command>addgroup</command>.
- </para>
- </listitem>
+ <para>
+ The syntax for <command>useradd</command> and
+ <command>groupadd</command> may differ slightly on different
+ versions of Unix, or they may have different names such as
+ <command>adduser</command> and <command>addgroup</command>.
+ </para>
+ </listitem>
- <listitem>
- <para>
- Change location to the directory containing the downloaded
- file, unpack the archive, and create a symlink to the
- <filename>mysql</filename> directory named
- <filename>mysql</filename>. Note that the actual file and
- directory names vary according to the MySQL Cluster
- version number.
- </para>
+ <listitem>
+ <para>
+ Change location to the directory containing the downloaded
+ file, unpack the archive, and create a symlink to the
+ <filename>mysql</filename> directory named
+ <filename>mysql</filename>. Note that the actual file and
+ directory names vary according to the MySQL Cluster version
+ number.
+ </para>
<programlisting>
shell> <userinput>cd /var/tmp</userinput>
shell> <userinput>tar -C /usr/local -xzvf mysql-cluster-gpl-&ndb-engine-current-7.1;-linux-i686-glibc23.tar.gz</userinput>
shell> <userinput>ln -s /usr/local/mysql-cluster-gpl-&ndb-engine-current-7.1;-linux-i686-glibc23.tar.gz /usr/local/mysql</userinput>
</programlisting>
- </listitem>
+ </listitem>
- <listitem>
- <para>
- Change location to the <filename>mysql</filename>
- directory and run the supplied script for creating the
- system databases:
- </para>
+ <listitem>
+ <para>
+ Change location to the <filename>mysql</filename> directory
+ and run the supplied script for creating the system
+ databases:
+ </para>
<programlisting>
shell> <userinput>cd mysql</userinput>
shell> <userinput>scripts/mysql_install_db --user=mysql</userinput>
</programlisting>
- </listitem>
+ </listitem>
- <listitem>
- <para>
- Set the necessary permissions for the MySQL server and
- data directories:
- </para>
+ <listitem>
+ <para>
+ Set the necessary permissions for the MySQL server and data
+ directories:
+ </para>
<programlisting>
shell> <userinput>chown -R root .</userinput>
@@ -586,21 +478,21 @@
shell> <userinput>chgrp -R mysql .</userinput>
</programlisting>
- <para>
- Note that the data directory on each machine hosting a
- data node is <filename>/usr/local/mysql/data</filename>.
- This piece of information is essential when configuring
- the management node. (See
- <xref linkend="mysql-cluster-install-configuration"/>.)
- </para>
- </listitem>
+ <para>
+ Note that the data directory on each machine hosting a data
+ node is <filename>/usr/local/mysql/data</filename>. This
+ piece of information is essential when configuring the
+ management node. (See
+ <xref linkend="mysql-cluster-install-configuration"/>.)
+ </para>
+ </listitem>
- <listitem>
- <para>
- Copy the MySQL startup script to the appropriate
- directory, make it executable, and set it to start when
- the operating system is booted up:
- </para>
+ <listitem>
+ <para>
+ Copy the MySQL startup script to the appropriate directory,
+ make it executable, and set it to start when the operating
+ system is booted up:
+ </para>
<programlisting>
shell> <userinput>cp support-files/mysql.server /etc/rc.d/init.d/</userinput>
@@ -608,333 +500,555 @@
shell> <userinput>chkconfig --add mysql.server</userinput>
</programlisting>
- <para>
- (The startup scripts directory may vary depending on your
- operating system and version—for example, in some
- Linux distributions, it is
- <filename>/etc/init.d</filename>.)
- </para>
+ <para>
+ (The startup scripts directory may vary depending on your
+ operating system and version—for example, in some
+ Linux distributions, it is
+ <filename>/etc/init.d</filename>.)
+ </para>
- <para>
- Here we use Red Hat's <command>chkconfig</command> for
- creating links to the startup scripts; use whatever means
- is appropriate for this purpose on your operating system
- and distribution, such as <command>update-rc.d</command>
- on Debian.
- </para>
- </listitem>
+ <para>
+ Here we use Red Hat's <command>chkconfig</command> for
+ creating links to the startup scripts; use whatever means is
+ appropriate for this purpose on your operating system and
+ distribution, such as <command>update-rc.d</command> on
+ Debian.
+ </para>
+ </listitem>
- </orderedlist>
+ </orderedlist>
+ <para>
Remember that the preceding steps must be repeated on each
machine where an SQL node is to reside.
</para>
- </formalpara>
+ <formalpara>
- <formalpara>
+ <title>Management nodes</title>
- <title>SQL node installation: RPM files</title>
+ <para>
+ Installation of the management node does not require the
+ <command>mysqld</command> binary. Only the MySQL Cluster
+ management server (<command>ndb_mgmd</command>) is required;
+ you most likely want to install the management client
+ (<command>ndb_mgm</command>) as well. Both of these binaries
+ also be found in the <filename>.tar.gz</filename> archive.
+ Again, we assume that you have placed this archive in
+ <filename>/var/tmp</filename>.
+ </para>
+ </formalpara>
+
<para>
- On each machine to be used for hosting a cluster SQL node,
- install the <emphasis role="bold">Server</emphasis> RPM by
- executing the following command as the system root user,
- replacing the name shown for the RPM as necessary to match the
- name of the RPM downloaded from the MySQL web site:
+ As system <literal>root</literal> (that is, after using
+ <command>sudo</command>, <command>su root</command>, or your
+ system's equivalent for temporarily assuming the system
+ administrator account's privileges), perform the following steps
+ to install <command>ndb_mgmd</command> and
+ <command>ndb_mgm</command> on the Cluster management node host:
+ </para>
+ <orderedlist>
+
+ <listitem>
+ <para>
+ Change location to the <filename>/var/tmp</filename>
+ directory, and extract the <command>ndb_mgm</command> and
+ <command>ndb_mgmd</command> from the archive into a suitable
+ directory such as <filename>/usr/local/bin</filename>:
+ </para>
+
<programlisting>
-shell> <userinput>rpm -Uhv MySQL-Cluster-gpl-server-&ndb-engine-current-7.1;-0.sles10.i586.rpm</userinput>
+shell> <userinput>cd /var/tmp</userinput>
+shell> <userinput>tar -zxvf mysql-&mysql-cluster-current-7.1;-linux-i686-glibc23.tar.gz</userinput>
+shell> <userinput>cd mysql-&mysql-cluster-current-7.1;-linux-i686-glibc23</userinput>
+shell> <userinput>cp bin/ndb_mgm* /usr/local/bin</userinput>
</programlisting>
- This installs the MySQL server binary
- (<command>mysqld</command>) in the
- <filename>/usr/sbin</filename> directory, as well as all needed
- MySQL Server support files. It also installs the
- <command>mysql.server</command> and
- <command>mysqld_safe</command> startup scripts in
- <filename>/usr/share/mysql</filename> and
- <filename>/usr/bin</filename>, respectively. The RPM installer
- should take care of general configuration issues (such as
- creating the <literal>mysql</literal> user and group, if needed)
- automatically.
- </para>
+ <para>
+ (You can safely delete the directory created by unpacking
+ the downloaded archive, and the files it contains, from
+ <filename>/var/tmp</filename> once
+ <command>ndb_mgm</command> and <command>ndb_mgmd</command>
+ have been copied to the executables directory.)
+ </para>
+ </listitem>
- </formalpara>
+ <listitem>
+ <para>
+ Change location to the directory into which you copied the
+ files, and then make both of them executable:
+ </para>
- <note>
- <para>
- To administer the SQL node (MySQL server), you should also
- install the <emphasis role="bold">Client</emphasis> RPM, as
- shown here:
- </para>
-
<programlisting>
-shell> <userinput>rpm -Uhv MySQL-Cluster-gpl-client-&ndb-engine-current-7.1;-0.sles10.i586.rpm</userinput>
+shell> <userinput>cd /usr/local/bin</userinput>
+shell> <userinput>chmod +x ndb_mgm*</userinput>
</programlisting>
+ </listitem>
+ </orderedlist>
+
<para>
- This installs the <command>mysql</command> client program.
+ In <xref linkend="mysql-cluster-install-configuration"/>, we
+ create configuration files for all of the nodes in our example
+ MySQL Cluster.
</para>
- </note>
- <formalpara>
+ </section>
- <title>SQL node installation: building from source</title>
+ <section id="mysql-cluster-install-linux-rpm">
- <para>
- If you compile MySQL with clustering support (for example, by
- using the
- <command>BUILD/compile-<replaceable>platform_name</replaceable>-max</command>
- script appropriate to your platform), and perform the default
- installation (using <command>make install</command> as the root
- user), <command>mysqld</command> is placed in
- <filename>/usr/local/mysql/bin</filename>. Follow the steps
- given in <xref linkend="source-installation"/> to make
- <command>mysqld</command> ready for use. If you want to run
- multiple SQL nodes, you can use a copy of the same
- <command>mysqld</command> executable and its associated support
- files on several machines. The easiest way to do this is to copy
- the entire <filename>/usr/local/mysql</filename> directory and
- all directories and files contained within it to the other SQL
- node host or hosts, then repeat the steps from
- <xref linkend="source-installation"/> on each machine. If you
- configure the build with a nondefault
- <option role="configure">--prefix</option>, you need to adjust
- the directory accordingly.
- </para>
+ <title>Installing MySQL Cluster from RPM</title>
- </formalpara>
+ <indexterm>
+ <primary>installing MySQL Cluster</primary>
+ <secondary>Linux RPM</secondary>
+ </indexterm>
- <formalpara>
+ <indexterm>
+ <primary>MySQL Cluster</primary>
+ <secondary>installing RPM (Linux)</secondary>
+ </indexterm>
- <title>Data node installation: RPM Files</title>
+ <para>
+ This section covers the steps necessary to install the correct
+ executables for each type of MySQL Cluster node using RPM
+ packages supplied by Oracle.
+ </para>
<para>
- On a computer that is to host a cluster data node it is
- necessary to install only the <emphasis role="bold">NDB Cluster
- - Storage engine</emphasis> RPM. To do so, copy this RPM to the
- data node host, and run the following command as the system root
- user, replacing the name shown for the RPM as necessary to match
- that of the RPM downloaded from the MySQL web site:
+ RPMs are available for both 32-bit and 64-bit Linux platforms.
+ For a MySQL Cluster, three RPMs are required:
+ </para>
-<programlisting>
-shell> <userinput>rpm -Uhv MySQL-Cluster-gpl-storage-&ndb-engine-current-7.1;-0.sles10.i586.rpm</userinput>
-</programlisting>
+ <itemizedlist>
- The previous command installs the MySQL Cluster data node binary
- (<command>ndbd</command>) in the <filename>/usr/sbin</filename>
- directory.
- </para>
+ <listitem>
+ <para>
+ The <emphasis role="bold">Server</emphasis> RPM (for
+ example,
+ <filename>MySQL-Cluster-gpl-server-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
+ <filename>MySQL-Cluster-gpl-server-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
+ or
+ <filename>MySQL-Cluster-gpl-server-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>),
+ which supplies the core files needed to run a MySQL Server
+ with <literal role="se">NDBCLUSTER</literal> storage engine
+ support (that is, as a MySQL Cluster SQL node).
+ </para>
- </formalpara>
+ <para>
+ If you do not have your own client application capable of
+ administering a MySQL server, you should also obtain and
+ install the <emphasis role="bold">Client</emphasis> RPM (for
+ example,
+ <filename>MySQL-Cluster-gpl-client-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
+ <filename>MySQL-Cluster-gpl-client-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
+ or
+ <filename>MySQL-Cluster-gpl-client-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>).
+ </para>
+ </listitem>
- <formalpara>
+ <listitem>
+ <para>
+ The <emphasis role="bold">Cluster storage engine</emphasis>
+ RPM (for example,
+ <filename>MySQL-Cluster-gpl-storage-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
+ <filename>MySQL-Cluster-gpl-storage-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
+ or
+ <filename>MySQL-Cluster-gpl-storage-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>),
+ which supplies the MySQL Cluster data node binary
+ (<command>ndbd</command>).
+ </para>
+ </listitem>
- <title>Data node installation: building from source</title>
+ <listitem>
+ <para>
+ The <emphasis role="bold">Cluster storage engine management
+ RPM</emphasis> (for example,
+ <filename>MySQL-Cluster-gpl-management-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
+ <filename>MySQL-Cluster-gpl-management-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
+ or
+ <filename>MySQL-Cluster-gpl-management-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>)
+ which provides the MySQL Cluster management server binary
+ (<command>ndb_mgmd</command>).
+ </para>
+ </listitem>
+ </itemizedlist>
+
<para>
- The only executable required on a data node host is
- <command>ndbd</command> or (in MySQL Cluster NDB 7.0 and later)
- <command>ndbmtd</command> (<command>mysqld</command>, for
- example, does not have to be present on the host machine). By
- default when doing a source build, this file is placed in the
- directory <filename>/usr/local/mysql/libexec</filename>. For
- installing on multiple data node hosts, only
- <command>ndbd</command> need be copied to the other host machine
- or machines. (This assumes that all data node hosts use the same
- architecture and operating system; otherwise you may need to
- compile separately for each different platform.)
- <command>ndbd</command> need not be in any particular location
- on the host's file system, as long as the location is known.
+ In addition, you should also obtain the
+ <emphasis role="bold">NDB Cluster - Storage engine basic
+ tools</emphasis> RPM (for example,
+ <filename>MySQL-Cluster-gpl-tools-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
+ <filename>MySQL-Cluster-gpl-tools-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
+ or
+ <filename>MySQL-Cluster-gpl-tools-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>),
+ which supplies several useful applications for working with a
+ MySQL Cluster. The most important of these is the MySQL Cluster
+ management client (<command>ndb_mgm</command>). The
+ <emphasis role="bold">NDB Cluster - Storage engine extra
+ tools</emphasis> RPM (for example,
+ <filename>MySQL-Cluster-gpl-extra-&ndb-engine-current-6.3;-0.sles10.i586.rpm</filename>,
+ <filename>MySQL-Cluster-gpl-extra-&ndb-engine-current-7.0;-0.sles10.i586.rpm</filename>,
+ or
+ <filename>MySQL-Cluster-gpl-extra-&ndb-engine-current-7.1;-0.sles10.i586.rpm</filename>)
+ contains some additional testing and monitoring programs, but is
+ not required to install a MySQL Cluster. (For more information
+ about these additional programs, see
+ <xref linkend="mysql-cluster-programs"/>.)
</para>
- </formalpara>
+ <para>
+ The MySQL Cluster version number in the RPM file names (shown
+ here as <literal>&ndb-engine-current-6.3;</literal>,
+ <literal>&ndb-engine-current-7.0;</literal>, or
+ <literal>&ndb-engine-current-7.1;</literal>) can vary according
+ to the version which you are actually using. <emphasis>It is
+ very important that all of the Cluster RPMs to be installed have
+ the same version number</emphasis>. The <literal>glibc</literal>
+ version number (if present), and architecture designation (shown
+ here as <literal>i586</literal>) should be appropriate to the
+ machine on which the RPM is to be installed.
+ </para>
- <formalpara>
+ <formalpara>
- <title>Management node installation: <filename>.tar.gz</filename> binary</title>
+ <title>Data nodes</title>
+ <para>
+ On a computer that is to host a cluster data node it is
+ necessary to install only the <emphasis role="bold">NDB
+ Cluster - Storage engine</emphasis> RPM. To do so, copy this
+ RPM to the data node host, and run the following command as
+ the system root user, replacing the name shown for the RPM as
+ necessary to match that of the RPM downloaded from the MySQL
+ web site:
+ </para>
+
+ </formalpara>
+
+<programlisting>
+shell> <userinput>rpm -Uhv MySQL-Cluster-gpl-storage-&ndb-engine-current-7.1;-0.sles10.i586.rpm</userinput>
+</programlisting>
+
<para>
- Installation of the management node does not require the
- <command>mysqld</command> binary. Only the MySQL Cluster
- management server (<command>ndb_mgmd</command>) is required; you
- most likely want to install the management client
- (<command>ndb_mgm</command>) as well. Both of these binaries
- also be found in the <filename>.tar.gz</filename> archive.
- Again, we assume that you have placed this archive in
- <filename>/var/tmp</filename>.
+ The previous command installs the MySQL Cluster data node binary
+ (<command>ndbd</command>) in the <filename>/usr/sbin</filename>
+ directory.
</para>
- </formalpara>
+ <formalpara>
- <para>
- As system <literal>root</literal> (that is, after using
- <command>sudo</command>, <command>su root</command>, or your
- system's equivalent for temporarily assuming the system
- administrator account's privileges), perform the following steps
- to install <command>ndb_mgmd</command> and
- <command>ndb_mgm</command> on the Cluster management node host:
+ <title>SQL nodes</title>
- <orderedlist>
+ <para>
+ On each machine to be used for hosting a cluster SQL node,
+ install the <emphasis role="bold">Server</emphasis> RPM by
+ executing the following command as the system root user,
+ replacing the name shown for the RPM as necessary to match the
+ name of the RPM downloaded from the MySQL web site:
+ </para>
- <listitem>
- <para>
- Change location to the <filename>/var/tmp</filename>
- directory, and extract the <command>ndb_mgm</command> and
- <command>ndb_mgmd</command> from the archive into a suitable
- directory such as <filename>/usr/local/bin</filename>:
- </para>
+ </formalpara>
<programlisting>
-shell> <userinput>cd /var/tmp</userinput>
-shell> <userinput>tar -zxvf mysql-&mysql-cluster-current-7.1;-linux-i686-glibc23.tar.gz</userinput>
-shell> <userinput>cd mysql-&mysql-cluster-current-7.1;-linux-i686-glibc23</userinput>
-shell> <userinput>cp bin/ndb_mgm* /usr/local/bin</userinput>
+shell> <userinput>rpm -Uhv MySQL-Cluster-gpl-server-&ndb-engine-current-7.1;-0.sles10.i586.rpm</userinput>
</programlisting>
- <para>
- (You can safely delete the directory created by unpacking
- the downloaded archive, and the files it contains, from
- <filename>/var/tmp</filename> once
- <command>ndb_mgm</command> and <command>ndb_mgmd</command>
- have been copied to the executables directory.)
- </para>
- </listitem>
+ <para>
+ This installs the MySQL server binary
+ (<command>mysqld</command>) in the
+ <filename>/usr/sbin</filename> directory, as well as all needed
+ MySQL Server support files. It also installs the
+ <command>mysql.server</command> and
+ <command>mysqld_safe</command> startup scripts in
+ <filename>/usr/share/mysql</filename> and
+ <filename>/usr/bin</filename>, respectively. The RPM installer
+ should take care of general configuration issues (such as
+ creating the <literal>mysql</literal> user and group, if needed)
+ automatically.
+ </para>
- <listitem>
- <para>
- Change location to the directory into which you copied the
- files, and then make both of them executable:
- </para>
+ <note>
+ <para>
+ To administer the SQL node (MySQL server), you should also
+ install the <emphasis role="bold">Client</emphasis> RPM, as
+ shown here:
+ </para>
<programlisting>
-shell> <userinput>cd /usr/local/bin</userinput>
-shell> <userinput>chmod +x ndb_mgm*</userinput>
+shell> <userinput>rpm -Uhv MySQL-Cluster-gpl-client-&ndb-engine-current-7.1;-0.sles10.i586.rpm</userinput>
</programlisting>
- </listitem>
- </orderedlist>
- </para>
+ <para>
+ This installs the <command>mysql</command> client program.
+ </para>
+ </note>
- <formalpara>
+ <formalpara>
- <title>Management node installation: RPM file</title>
+ <title>Management nodes</title>
- <para>
- To install the MySQL Cluster management server, it is necessary
- only to use the <emphasis role="bold">NDB Cluster - Storage
- engine management</emphasis> RPM. Copy this RPM to the computer
- intended to host the management node, and then install it by
- running the following command as the system root user (replace
- the name shown for the RPM as necessary to match that of the
- <emphasis role="bold">Storage engine management</emphasis> RPM
- downloaded from the MySQL web site):
+ <para>
+ To install the MySQL Cluster management server, it is
+ necessary only to use the <emphasis role="bold">NDB Cluster -
+ Storage engine management</emphasis> RPM. Copy this RPM to the
+ computer intended to host the management node, and then
+ install it by running the following command as the system root
+ user (replace the name shown for the RPM as necessary to match
+ that of the <emphasis role="bold">Storage engine
+ management</emphasis> RPM downloaded from the MySQL web site):
+ </para>
+ </formalpara>
+
<programlisting>
shell> <userinput>rpm -Uhv MySQL-Cluster-gpl-management-&ndb-engine-current-7.1;-0.sles10.i586.rpm</userinput>
</programlisting>
+ <para>
This installs the management server binary
(<command>ndb_mgmd</command>) to the
<filename>/usr/sbin</filename> directory.
</para>
- </formalpara>
+ <para>
+ You should also install the <literal role="se">NDB</literal>
+ management client, which is supplied by the
+ <emphasis role="bold">Storage engine basic tools</emphasis> RPM.
+ Copy this RPM to the same computer as the management node, and
+ then install it by running the following command as the system
+ root user (again, replace the name shown for the RPM as
+ necessary to match that of the <emphasis role="bold">Storage
+ engine basic tools</emphasis> RPM downloaded from the MySQL web
+ site):
+ </para>
- <para>
- You should also install the <literal role="se">NDB</literal>
- management client, which is supplied by the
- <emphasis role="bold">Storage engine basic tools</emphasis> RPM.
- Copy this RPM to the same computer as the management node, and
- then install it by running the following command as the system
- root user (again, replace the name shown for the RPM as necessary
- to match that of the <emphasis role="bold">Storage engine basic
- tools</emphasis> RPM downloaded from the MySQL web site):
-
<programlisting>
shell> <userinput>rpm -Uhv MySQL-Cluster-gpl-tools-&ndb-engine-current-7.1;-0.sles10.i586.rpm</userinput>
</programlisting>
- The <emphasis role="bold">Storage engine basic tools</emphasis>
- RPM installs the MySQL Cluster management client
- (<command>ndb_mgm</command>) to the <filename>/usr/bin</filename>
- directory.
- </para>
-
- <note>
<para>
- You can also install the <emphasis role="bold">Cluster storage
- engine extra tools</emphasis> RPM, if you wish, as shown here:
+ The <emphasis role="bold">Storage engine basic tools</emphasis>
+ RPM installs the MySQL Cluster management client
+ (<command>ndb_mgm</command>) to the
+ <filename>/usr/bin</filename> directory.
</para>
+ <note>
+ <para>
+ You can also install the <emphasis role="bold">Cluster storage
+ engine extra tools</emphasis> RPM, if you wish, as shown here:
+ </para>
+
<programlisting>
shell> <userinput>rpm -Uhv MySQL-Cluster-gpl-extra-&ndb-engine-current-7.1;-0.sles10.i586.rpm</userinput>
</programlisting>
+ <para>
+ You may find the extra tools useful; however the
+ <emphasis role="bold">Cluster storage engine extra
+ tools</emphasis> RPM is <emphasis>not</emphasis> required to
+ install a working MySQL Cluster.
+ </para>
+ </note>
+
<para>
- You may find the extra tools useful; however the
- <emphasis role="bold">Cluster storage engine extra
- tools</emphasis> RPM is <emphasis>not</emphasis> required to
- install a working MySQL Cluster.
+ See <xref linkend="linux-installation-rpm"/>, for general
+ information about installing MySQL using RPMs supplied by
+ Oracle.
</para>
- </note>
- <formalpara>
+ <para>
+ After installing from RPM, you still need to configure the
+ cluster as discussed in
+ <xref linkend="mysql-cluster-install-configuration"/>.
+ </para>
- <title>Management node installation: building from source</title>
+ </section>
+ <section id="mysql-cluster-install-linux-source">
+
+ <title>Building MySQL Cluster from Source on Linux</title>
+
+ <indexterm>
+ <primary>installing MySQL Cluster</primary>
+ <secondary>Linux source release</secondary>
+ </indexterm>
+
+ <indexterm>
+ <primary>MySQL Cluster</primary>
+ <secondary>installing from source (Linux)</secondary>
+ </indexterm>
+
<para>
- When building from source and running the default <command>make
- install</command>, the management server binary
- (<command>ndb_mgmd</command>) is placed in
- <filename>/usr/local/mysql/libexec</filename>, while the
- management client binary (<command>ndb_mgm</command>) can be
- found in <filename>/usr/local/mysql/bin</filename>. Only
- <command>ndb_mgmd</command> is required to be present on a
- management node host; however, it is also a good idea to have
- <command>ndb_mgm</command> present on the same host machine.
- Neither of these executables requires a specific location on the
- host machine's file system.
+ This section provides information about compiling MySQL Cluster
+ on Linux and other Unix-like platforms. Building MySQL Cluster
+ from source is similar to building the standard MySQL Server,
+ although it differs in a few key respects discussed here. For
+ general information about building MySQL from source, see
+ <xref linkend="source-installation"/>. Beginning with MySQL
+ Cluster NDB 7.1.3, MySQL Cluster is also supported on Windows
+ platforms, and can be built on Windows from source. For
+ information about compiling MySQL Cluster on Windows platforms,
+ see <xref linkend="mysql-cluster-install-windows-source"/>.
</para>
- </formalpara>
+ <para>
+ Building MySQL Cluster requires using the MySQL Cluster sources.
+ These are available from the MySQL Cluster downloads page at
+ <uri>&base-url-cluster-downloads;</uri>. The archived source
+ file should have a name similar to
+ <filename>mysql-cluster-gpl-&ndb-engine-current-6.3;.tar.gz</filename>,
+ <filename>mysql-cluster-gpl-&ndb-engine-current-7.0;.tar.gz</filename>,
+ or
+ <filename>mysql-cluster-gpl-&ndb-engine-current-7.1;.tar.gz</filename>.
+ You can also obtain MySQL development sources from
+ launchpad.net. Attempting to build MySQL Cluster from standard
+ MySQL ¤t-series; sources is not supported.
+ </para>
- <para>
- In <xref linkend="mysql-cluster-install-configuration"/>, we
- create configuration files for all of the nodes in our example
- MySQL Cluster.
- </para>
+ <para>
+ In addition to any other <command>configure</command> options
+ you wish to use, be sure to include
+ <option role="configure">--with-plugins=ndbcluster</option>,
+ <option role="configure">--with-plugins=max</option>, or , or
+ <option role="configure">--with-plugins=max-no-innodb</option>.
+ Either of these options causes the binaries for the management
+ nodes, data nodes, and other MySQL Cluster programs to be built;
+ it also causes <command>mysqld</command> to be compiled with
+ <literal role="se">NDB</literal> storage engine support.
+ </para>
- <formalpara>
+ <para>
+ After you have run <command>make && make
+ install</command> (or your system's equivalent), the result
+ is similar to what is obtained by unpacking a precompiled binary
+ to the same location. However, the layout can differ. These
+ differences are covered in the next few paragraphs.
+ </para>
- <title>MySQL Cluster on Windows</title>
+ <para>
+ Prior to MySQL Cluster NDB 7.1.9, MySQL Cluster was not
+ compatible with the <literal role="se">InnoDB</literal> Plugin;
+ in earlier MySQL Cluster releases, only the version of
+ <literal role="se">InnoDB</literal> supplied with the MySQL
+ Server could be used. Beginning with MySQL Cluster NDB 7.1.9,
+ you can build MySQL Cluster with
+ <literal role="se">InnoDB</literal> storage engine or plugin
+ support using the appropriate
+ <option role="configure">--with-plugins</option> option for
+ <command>configure</command>.
+ </para>
+ <formalpara>
+
+ <title>Management nodes</title>
+
+ <para>
+ When building from source and running the default
+ <command>make install</command>, the management server binary
+ (<command>ndb_mgmd</command>) is placed in
+ <filename>/usr/local/mysql/libexec</filename>, while the
+ management client binary (<command>ndb_mgm</command>) can be
+ found in <filename>/usr/local/mysql/bin</filename>. Only
+ <command>ndb_mgmd</command> is required to be present on a
+ management node host; however, it is also a good idea to have
+ <command>ndb_mgm</command> present on the same host machine.
+ Neither of these executables requires a specific location on
+ the host machine's file system.
+ </para>
+
+ </formalpara>
+
+ <formalpara>
+
+ <title>Data nodes</title>
+
+ <para>
+ The only executable required on a data node host is
+ <command>ndbd</command> (<command>mysqld</command>, for
+ example, does not have to be present on the host machine). By
+ default when doing a source build, this file is placed in the
+ directory <filename>/usr/local/mysql/libexec</filename>. For
+ installing on multiple data node hosts, only
+ <command>ndbd</command> need be copied to the other host
+ machine or machines. (This assumes that all data node hosts
+ use the same architecture and operating system; otherwise you
+ may need to compile separately for each different platform.)
+ <command>ndbd</command> need not be in any particular location
+ on the host's file system, as long as the location is known.
+ </para>
+
+ </formalpara>
+
<para>
- Experimental support for MySQL Cluster on Microsoft Windows
- operating systems was introduced in MySQL Cluster NDB 7.0.
- Beginning with MySQL Cluster NDB 7.1.3, production support is
- provided for MySQL Cluster on Windows, and MySQL Cluster
- binaries for Windows can be obtained from
- <ulink url="&base-url-cluster-downloads;"/>. If you wish to
- compile MySQL Cluster from source on Windows, you must configure
- the build using the
- <literal>WITH_NDBCLUSTER_STORAGE_ENGINE</literal> option before
- creating the Visual Studio project files and compiling the
- project. After running <command>make_win_bin_dist</command>, the
- MySQL Cluster binaries can be found in the
- <filename>bin</filename> directory of the resulting archive. For
- more information, see <xref linkend="windows-source-build"/>.
+ When compiling MySQL Cluster NDB 7.0 or later from source, no
+ special options are required for building multi-threaded data
+ node binaries. On Unix platforms, configuring the build with any
+ of the options <option>--with-plugins=ndbcluster</option>,
+ <option role="configure">--with-plugins=max</option>, or
+ <option role="configure">--with-plugins=max-no-innodb</option>
+ causes <command>ndbmtd</command> to be built automatically;
+ <command>make install</command> places the
+ <command>ndbmtd</command> binary in the
+ <filename>libexec</filename> directory along with
+ <command>mysqld</command>, <command>ndbd</command>, and
+ <command>ndb_mgm</command>.
</para>
- </formalpara>
+ <formalpara>
+ <title>SQL nodes</title>
+
+ <para>
+ If you compile MySQL with clustering support, and perform the
+ default installation (using <command>make install</command> as
+ the system <literal>root</literal> user),
+ <command>mysqld</command> is placed in
+ <filename>/usr/local/mysql/bin</filename>. Follow the steps
+ given in <xref linkend="source-installation"/> to make
+ <command>mysqld</command> ready for use. If you want to run
+ multiple SQL nodes, you can use a copy of the same
+ <command>mysqld</command> executable and its associated
+ support files on several machines. The easiest way to do this
+ is to copy the entire <filename>/usr/local/mysql</filename>
+ directory and all directories and files contained within it to
+ the other SQL node host or hosts, then repeat the steps from
+ <xref linkend="source-installation"/> on each machine. If you
+ configure the build with a nondefault
+ <option role="configure">--prefix</option>, you need to adjust
+ the directory accordingly.
+ </para>
+
+ </formalpara>
+
+ <para>
+ In <xref linkend="mysql-cluster-install-configuration"/>, we
+ create configuration files for all of the nodes in our example
+ MySQL Cluster.
+ </para>
+
+ </section>
+
</section>
<section id="mysql-cluster-install-windows">
<title>Installing MySQL Cluster on Windows</title>
+ <indexterm>
+ <primary>installing MySQL Cluster</primary>
+ <secondary>Windows</secondary>
+ </indexterm>
+
+ <indexterm>
+ <primary>MySQL Cluster</primary>
+ <secondary>installation (Windows)</secondary>
+ </indexterm>
+
<para>
Experimental support for MySQL Cluster on Microsoft Windows
operating systems was introduced in MySQL Cluster NDB 7.0.
@@ -960,22 +1074,14 @@
<indexterm>
<primary>installing MySQL Cluster</primary>
+ <secondary>Windows binary release</secondary>
</indexterm>
<indexterm>
<primary>MySQL Cluster</primary>
- <secondary>installation</secondary>
+ <secondary>installing binary (Windows)</secondary>
</indexterm>
- <indexterm>
- <primary>Obtaining MySQL Cluster</primary>
- </indexterm>
-
- <indexterm>
- <primary>MySQL Cluster</primary>
- <secondary>obtaining</secondary>
- </indexterm>
-
<para>
This section describes a basic installation of MySQL Cluster on
Windows using a binary <literal>no-install</literal> MySQL
@@ -1406,7 +1512,7 @@
</programlisting>
<para>
- For reasons of brevity and legibility. we recommend that you
+ For reasons of brevity and legibility, we recommend that you
use forward slashes in directory paths used in MySQL Cluster
program options and configuration files on Windows.
</para>
@@ -1418,6 +1524,16 @@
<title>Compiling and Installing MySQL Cluster from Source on Windows</title>
+ <indexterm>
+ <primary>installing MySQL Cluster</primary>
+ <secondary>Windows source</secondary>
+ </indexterm>
+
+ <indexterm>
+ <primary>MySQL Cluster</primary>
+ <secondary>installing from source (Windows)</secondary>
+ </indexterm>
+
<para>
Oracle provides precompiled MySQL Cluster binaries for Windows
which should be adequate for most users. However, if you wish,
@@ -2086,7 +2202,7 @@
<formalpara>
- <title>Configuring the storage and SQL nodes</title>
+ <title>Configuring the data nodes and SQL nodes</title>
<para>
The <filename>my.cnf</filename> file needed for the data nodes
@@ -2399,9 +2515,9 @@
</note>
<para>
- Working with data in MySQL Cluster is not much different from
- doing so in MySQL without clustering support. There are two points
- to keep in mind:
+ Working with database tables and data in MySQL Cluster is not much
+ different from doing so in standard MySQL. There are two key
+ points to keep in mind:
</para>
<itemizedlist>
@@ -2432,21 +2548,14 @@
<listitem>
<para>
- Each <literal role="se">NDBCLUSTER</literal> table
- <emphasis>must</emphasis> have a primary key. If no primary
- key is defined by the user when a table is created, the
- <literal role="se">NDBCLUSTER</literal> storage engine
- automatically generates a hidden one.
+ Every <literal role="se">NDBCLUSTER</literal> table has a
+ primary key. If no primary key is defined by the user when a
+ table is created, the <literal role="se">NDBCLUSTER</literal>
+ storage engine automatically generates a hidden one. Such a
+ key takes up space just as does any other table index. (It is
+ not uncommon to encounter problems due to insufficient memory
+ for accommodating these automatically created indexes.)
</para>
-
- <note>
- <para>
- This hidden key takes up space just as does any other table
- index. It is not uncommon to encounter problems due to
- insufficient memory for accommodating these automatically
- created indexes.)
- </para>
- </note>
</listitem>
</itemizedlist>
| Thread |
|---|
| • svn commit - mysqldoc@oter02: r26191 - in trunk: refman-5.0 refman-5.1 | jon.stephens | 12 May |