Building MySQL from the source code enables you to customize build parameters, compiler optimizations, and installation location. For a list of systems on which MySQL is known to run, see Section 2.1.1, “Operating Systems Supported by MySQL Community Server”.
Before you proceed with an installation from source, check whether Oracle produces a precompiled binary distribution for your platform and whether it works for you. We put a great deal of effort into ensuring that our binaries are built with the best possible options for optimal performance. Instructions for installing binary distributions are available in Section 2.2, “Installing MySQL on Unix/Linux Using Generic Binaries”.
This section describes how to build MySQL from source using CMake. Before MySQL 5.5, source builds used the GNU autotools on Unix-like systems. Source builds on Windows used CMake, but the process was different from that described here. For source-building instructions for older versions of MySQL, see Installing MySQL from Source, in the MySQL 5.1 Reference Manual. If you are familiar with autotools but not CMake, you might find these transition instructions helpful: Autotools to CMake Transition Guide
There are two methods for installing MySQL from source:
Use a standard MySQL source distribution. To obtain a standard distribution, see Section 2.1.3, “How to Get MySQL”. For instructions on building from a standard distribution, see Section 2.10.2, “Installing MySQL Using a Standard Source Distribution”.
Standard distributions are available as compressed
tar files, Zip archives, or RPM packages.
Distribution files have names of the form
VERSION is a number like
5.5.33. File names for source
distributions can be distinguished from those for precompiled
binary distributions in that source distribution names are
generic and include no platform name, whereas binary
distribution names include a platform name indicating the type
of system for which the distribution is intended (for example,
Use a MySQL development tree. Development trees have not necessarily received the same level of testing as standard release distributions, so this installation method is usually required only if you need the most recent code changes. For information on building from one of the development trees, see Section 2.10.3, “Installing MySQL Using a Development Source Tree”.
Installation of MySQL from source requires several development tools. Some of these tools are needed no matter whether you use a standard source distribution or a development source tree. Other tool requirements depend on which installation method you use.
To install MySQL from source, your system must have the following tools, regardless of installation method:
CMake, which is used as the build framework on all platforms. CMake can be downloaded from http://www.cmake.org.
A good make program. Although some platforms come with their own make implementations, it is highly recommended that you use GNU make 3.75 or newer. It may already be available on your system as gmake. GNU make is available from http://www.gnu.org/software/make/.
A working ANSI C++ compiler. GCC 4.2.1 or later, Sun Studio 10 or later, Visual Studio 2008 or later, and many current vendor-supplied compilers are known to work.
Perl is needed if you intend to run test scripts. Most Unix-like systems include Perl. On Windows, you can use a version such as ActiveState Perl.
To install MySQL from a standard source distribution, one of the following tools is required to unpack the distribution file:
tar file: GNU
uncompress the distribution and a reasonable
tar to unpack it. If your
tar program supports the
option, it can both uncompress and unpack the file.
GNU tar is known to work. The standard
tar provided with some operating systems is
not able to unpack the long file names in the MySQL
distribution. You should download and install GNU
tar, or if available, use a preinstalled
version of GNU tar. Usually this is available as
gnutar, gtar, or as
tar within a GNU or Free Software directory,
/usr/local/bin. GNU tar
is available from
.zip Zip archive:
WinZip or another tool that can read
.rpm RPM package: The
rpmbuild program used to build the
distribution unpacks it.
To install MySQL from a development source tree, the following additional tools are required:
To obtain the source tree, you must have Bazaar installed. The Bazaar VCS Web site has instructions for downloading and installing Bazaar on different platforms. Bazaar is supported on any platform that supports Python, and is therefore compatible with any Linux, Unix, Windows, or Mac OS X host.
bison is needed to generate
sql_yacc.yy You should use the latest
version of bison where possible. Versions
1.75 and 2.1 are known to work. There have been reported
problems with bison 1.875. If you experience
problems, upgrade to a later, rather than earlier, version.
bison is available from
bison for Windows can be downloaded from
Download the package labeled “Complete package, excluding
sources”. On Windows, the default location for
bison is the
Files\GnuWin32 directory. Some utilities may fail to
find bison because of the space in the
directory name. Also, Visual Studio may simply hang if there are
spaces in the path. You can resolve these problems by installing
into a directory that does not contain a space; for example
On OpenSolaris and Solaris Express, m4 must be installed in addition to bison. m4 is available from http://www.gnu.org/software/m4/.
If you have to install any programs, modify your
PATH environment variable to include any
directories in which the programs are located. See
Section 4.2.4, “Setting Environment Variables”.
If you run into problems and need to file a bug report, please use the instructions in Section 1.7, “How to Report Bugs or Problems”.