mirror of
https://github.com/MariaDB/server.git
synced 2025-01-15 19:42:28 +01:00
Point to the correct documentation on building in our KB.
This commit is contained in:
parent
3e748505de
commit
b8eac6a719
1 changed files with 1 additions and 288 deletions
|
@ -1,289 +1,2 @@
|
|||
Up-to-date instructions on MariaDB building on Windows can be found in http://kb.askmonty.org/en/building-mariadb-on-windows.
|
||||
|
||||
2.5.10. Installing MySQL from Source on Windows
|
||||
|
||||
These instructions describe how to build binaries from source for
|
||||
MySQL 5.1 on Windows. Instructions are provided for building
|
||||
binaries from a standard source distribution or from the Bazaar
|
||||
tree that contains the latest development source.
|
||||
|
||||
Note
|
||||
|
||||
The instructions here are strictly for users who want to test
|
||||
MySQL on Microsoft Windows from the latest source distribution or
|
||||
from the Bazaar tree. For production use, we do not advise using a
|
||||
MySQL server built by yourself from source. Normally, it is best
|
||||
to use precompiled binary distributions of MySQL that are built
|
||||
specifically for optimal performance on Windows by Oracle
|
||||
Corporation. Instructions for installing binary distributions are
|
||||
available in Section 2.5, "Installing MySQL on Windows."
|
||||
|
||||
To build MySQL on Windows from source, you must satisfy the
|
||||
following system, compiler, and resource requirements:
|
||||
|
||||
* Windows 2000, Windows XP, or newer version.
|
||||
Windows Vista is supported when using Visual Studio 2005
|
||||
provided you have installed the following updates:
|
||||
|
||||
+ Microsoft Visual Studio 2005 Professional Edition - ENU
|
||||
Service Pack 1 (KB926601)
|
||||
(http://support.microsoft.com/?kbid=926601)
|
||||
|
||||
+ Security Update for Microsoft Visual Studio 2005
|
||||
Professional Edition - ENU (KB937061)
|
||||
(http://support.microsoft.com/?kbid=937061)
|
||||
|
||||
+ Update for Microsoft Visual Studio 2005 Professional
|
||||
Edition - ENU (KB932232)
|
||||
(http://support.microsoft.com/?kbid=932232)
|
||||
|
||||
* CMake, which can be downloaded from http://www.cmake.org.
|
||||
After installing, modify your path to include the cmake
|
||||
binary.
|
||||
|
||||
* Microsoft Visual C++ 2005 Express Edition, Visual Studio .Net
|
||||
2003 (7.1), or Visual Studio 2005 (8.0) compiler system.
|
||||
|
||||
* If you are using Visual C++ 2005 Express Edition, you must
|
||||
also install an appropriate Platform SDK. More information and
|
||||
links to downloads for various Windows platforms is available
|
||||
from
|
||||
http://www.microsoft.com/downloads/details.aspx?familyid=0baf2
|
||||
b35-c656-4969-ace8-e4c0c0716adb.
|
||||
|
||||
* If you are compiling from a Bazaar tree or making changes to
|
||||
the parser, you need bison for Windows, which can be
|
||||
downloaded from
|
||||
http://gnuwin32.sourceforge.net/packages/bison.htm. Download
|
||||
the package labeled "Complete package, excluding sources".
|
||||
After installing the package, modify your path to include the
|
||||
bison binary and ensure that this binary is accessible from
|
||||
Visual Studio.
|
||||
|
||||
* Cygwin might be necessary if you want to run the test script
|
||||
or package the compiled binaries and support files into a Zip
|
||||
archive. (Cygwin is needed only to test or package the
|
||||
distribution, not to build it.) Cygwin is available from
|
||||
http://cygwin.com.
|
||||
|
||||
* 3GB to 5GB of disk space.
|
||||
|
||||
The exact system requirements for Visual Studio can be found here:
|
||||
http://msdn.microsoft.com/vstudio/Previous/2003/sysreqs/default.as
|
||||
px and
|
||||
http://msdn.microsoft.com/vstudio/products/sysreqs/default.aspx
|
||||
|
||||
You also need a MySQL source distribution for Windows, which can
|
||||
be obtained two ways:
|
||||
|
||||
* Obtain a source distribution packaged by Oracle Corporation.
|
||||
These are available from http://dev.mysql.com/downloads/.
|
||||
|
||||
* Package a source distribution yourself from the latest Bazaar
|
||||
developer source tree. For instructions on pulling the latest
|
||||
source files, see Section 2.3.3, "Installing from the
|
||||
Development Source Tree."
|
||||
|
||||
If you find something not working as expected, or you have
|
||||
suggestions about ways to improve the current build process on
|
||||
Windows, please send a message to the win32 mailing list. See
|
||||
Section 1.6.1, "MySQL Mailing Lists."
|
||||
|
||||
2.5.10.1. Building MySQL from Source Using CMake and Visual Studio
|
||||
|
||||
You can build MySQL on Windows by using a combination of cmake and
|
||||
Microsoft Visual Studio .NET 2003 (7.1), Microsoft Visual Studio
|
||||
2005 (8.0), Microsoft Visual Studio 2008 (9.0) or Microsoft Visual
|
||||
C++ 2005 Express Edition. You must have the appropriate Microsoft
|
||||
Platform SDK installed.
|
||||
|
||||
Note
|
||||
|
||||
To compile from the source code on Windows you must use the
|
||||
standard source distribution (for example, mysql-5.1.46.tar.gz).
|
||||
You build from the same distribution as used to build MySQL on
|
||||
Unix, Linux and other platforms. Do not use the Windows Source
|
||||
distributions as they do not contain the necessary configuration
|
||||
script and other files.
|
||||
|
||||
Follow this procedure to build MySQL:
|
||||
|
||||
1. If you are installing from a packaged source distribution,
|
||||
create a work directory (for example, C:\workdir), and unpack
|
||||
the source distribution there using WinZip or another Windows
|
||||
tool that can read .zip files. This directory is the work
|
||||
directory in the following instructions.
|
||||
|
||||
Note
|
||||
You must run the commands in the win directory from the
|
||||
top-level source directory. Do not change into the win
|
||||
directory, as the commands will not be executed correctly.
|
||||
|
||||
2. Start a command shell. If you have not configured the PATH and
|
||||
other environment variables for all command shells, you may be
|
||||
able to start a command shell from the Start Menu within the
|
||||
Windows Visual Studio menu that contains the necessary
|
||||
environment changes.
|
||||
|
||||
3. Within the command shell, navigate to the work directory and
|
||||
run the following command:
|
||||
C:\workdir>win\configure.js options
|
||||
If you have associated the .js file extension with an
|
||||
application such as a text editor, then you may need to use
|
||||
the following command to force configure.js to be executed as
|
||||
a script:
|
||||
C:\workdir>cscript win\configure.js options
|
||||
These options are available for configure.js:
|
||||
|
||||
+ WITH_INNOBASE_STORAGE_ENGINE: Enable the InnoDB storage
|
||||
engine.
|
||||
|
||||
+ WITH_PARTITION_STORAGE_ENGINE: Enable user-defined
|
||||
partitioning.
|
||||
|
||||
+ WITH_ARCHIVE_STORAGE_ENGINE: Enable the ARCHIVE storage
|
||||
engine.
|
||||
|
||||
+ WITH_BLACKHOLE_STORAGE_ENGINE: Enable the BLACKHOLE
|
||||
storage engine.
|
||||
|
||||
+ WITH_EXAMPLE_STORAGE_ENGINE: Enable the EXAMPLE storage
|
||||
engine.
|
||||
|
||||
+ WITH_FEDERATED_STORAGE_ENGINE: Enable the FEDERATED
|
||||
storage engine.
|
||||
|
||||
+ WITH_NDBCLUSTER_STORAGE_ENGINE (experimental): Enable the
|
||||
NDBCLUSTER storage engine in the MySQL server; cause
|
||||
binaries for the MySQL Cluster management and data node,
|
||||
management client, and other programs to be built.
|
||||
This option is supported only in MySQL Cluster NDB 7.0
|
||||
(NDBCLUSTER storage engine versions 6.4.0 and later)
|
||||
using the MySQL Cluster sources. It cannot be used to
|
||||
enable clustering support in other MySQL source trees or
|
||||
distributions.
|
||||
|
||||
+ MYSQL_SERVER_SUFFIX=suffix: Server suffix, default none.
|
||||
|
||||
+ COMPILATION_COMMENT=comment: Server comment, default
|
||||
"Source distribution".
|
||||
|
||||
+ MYSQL_TCP_PORT=port: Server port, default 3306.
|
||||
|
||||
+ DISABLE_GRANT_OPTIONS: Disables the --bootstrap,
|
||||
--skip-grant-tables, and --init-file options for mysqld.
|
||||
This option is available as of MySQL 5.1.15.
|
||||
For example (type the command on one line):
|
||||
C:\workdir>win\configure.js WITH_INNOBASE_STORAGE_ENGINE
|
||||
WITH_PARTITION_STORAGE_ENGINE MYSQL_SERVER_SUFFIX=-pro
|
||||
|
||||
4. From the work directory, execute the win\build-vs9.bat
|
||||
(Windows Visual Studio 2008), win\build-vs8.bat (Windows
|
||||
Visual Studio 2005), or win\build-vs71.bat (Windows Visual
|
||||
Stidion 2003) script, depending on the version of Visual
|
||||
Studio you have installed. The script invokes CMake, which
|
||||
generates the mysql.sln solution file.
|
||||
You can also use the corresponding 64-bit file (for example
|
||||
win\build-vs8_x64.bat or win\build-vs9_x64.bat) to build the
|
||||
64-bit version of MySQL. However, you cannot build the 64-bit
|
||||
version with Visual Studio Express Edition. You must use
|
||||
Visual Studio 2005 (8.0) or higher.
|
||||
|
||||
5. From the work directory, open the generated mysql.sln file
|
||||
with Visual Studio and select the proper configuration using
|
||||
the Configuration menu. The menu provides Debug, Release,
|
||||
RelwithDebInfo, MinRelInfo options. Then select Solution >
|
||||
Build to build the solution.
|
||||
Remember the configuration that you use in this step. It is
|
||||
important later when you run the test script because that
|
||||
script needs to know which configuration you used.
|
||||
|
||||
6. Test the server. The server built using the preceding
|
||||
instructions expects that the MySQL base directory and data
|
||||
directory are C:\mysql and C:\mysql\data by default. If you
|
||||
want to test your server using the source tree root directory
|
||||
and its data directory as the base directory and data
|
||||
directory, you need to tell the server their path names. You
|
||||
can either do this on the command line with the --basedir and
|
||||
--datadir options, or by placing appropriate options in an
|
||||
option file. (See Section 4.2.3.3, "Using Option Files.") If
|
||||
you have an existing data directory elsewhere that you want to
|
||||
use, you can specify its path name instead.
|
||||
When the server is running in standalone fashion or as a
|
||||
service based on your configuration, try to connect to it from
|
||||
the mysql interactive command-line utility.
|
||||
You can also run the standard test script, mysql-test-run.pl.
|
||||
This script is written in Perl, so you'll need either Cygwin
|
||||
or ActiveState Perl to run it. You may also need to install
|
||||
the modules required by the script. To run the test script,
|
||||
change location into the mysql-test directory under the work
|
||||
directory, set the MTR_VS_CONFIG environment variable to the
|
||||
configuration you selected earlier (or use the --vs-config
|
||||
option), and invoke mysql-test-run.pl. For example (using
|
||||
Cygwin and the bash shell):
|
||||
shell> cd mysql-test
|
||||
shell> export MTR_VS_CONFIG=debug
|
||||
shell> ./mysql-test-run.pl --force --timer
|
||||
shell> ./mysql-test-run.pl --force --timer --ps-protocol
|
||||
|
||||
When you are satisfied that the programs you have built are
|
||||
working correctly, stop the server. Now you can install the
|
||||
distribution. One way to do this is to use the make_win_bin_dist
|
||||
script in the scripts directory of the MySQL source distribution
|
||||
(see Section 4.4.2, "make_win_bin_dist --- Package MySQL
|
||||
Distribution as ZIP Archive"). This is a shell script, so you must
|
||||
have Cygwin installed if you want to use it. It creates a Zip
|
||||
archive of the built executables and support files that you can
|
||||
unpack in the location at which you want to install MySQL.
|
||||
|
||||
It is also possible to install MySQL by copying directories and
|
||||
files directly:
|
||||
|
||||
1. Create the directories where you want to install MySQL. For
|
||||
example, to install into C:\mysql, use these commands:
|
||||
C:\> mkdir C:\mysql
|
||||
C:\> mkdir C:\mysql\bin
|
||||
C:\> mkdir C:\mysql\data
|
||||
C:\> mkdir C:\mysql\share
|
||||
C:\> mkdir C:\mysql\scripts
|
||||
If you want to compile other clients and link them to MySQL,
|
||||
you should also create several additional directories:
|
||||
C:\> mkdir C:\mysql\include
|
||||
C:\> mkdir C:\mysql\lib
|
||||
C:\> mkdir C:\mysql\lib\debug
|
||||
C:\> mkdir C:\mysql\lib\opt
|
||||
If you want to benchmark MySQL, create this directory:
|
||||
C:\> mkdir C:\mysql\sql-bench
|
||||
Benchmarking requires Perl support. See Section 2.15, "Perl
|
||||
Installation Notes."
|
||||
|
||||
2. From the work directory, copy into the C:\mysql directory the
|
||||
following files and directories:
|
||||
C:\> cd \workdir
|
||||
C:\workdir> mkdir C:\mysql
|
||||
C:\workdir> mkdir C:\mysql\bin
|
||||
C:\workdir> copy client\Release\*.exe C:\mysql\bin
|
||||
C:\workdir> copy sql\Release\mysqld.exe C:\mysql\bin\mysqld.exe
|
||||
C:\workdir> xcopy scripts\*.* C:\mysql\scripts /E
|
||||
C:\workdir> xcopy share\*.* C:\mysql\share /E
|
||||
If you want to compile other clients and link them to MySQL,
|
||||
you should also copy several libraries and header files:
|
||||
C:\workdir> copy lib\Release\mysqlclient.lib C:\mysql\lib\debug
|
||||
C:\workdir> copy lib\Release\libmysql.* C:\mysql\lib\debug
|
||||
C:\workdir> copy lib\Release\zlib.* C:\mysql\lib\debug
|
||||
C:\workdir> copy lib\Release\mysqlclient.lib C:\mysql\lib\opt
|
||||
C:\workdir> copy lib\Release\libmysql.* C:\mysql\lib\opt
|
||||
C:\workdir> copy lib\Release\zlib.* C:\mysql\lib\opt
|
||||
C:\workdir> copy include\*.h C:\mysql\include
|
||||
C:\workdir> copy libmysql\libmysql.def C:\mysql\include
|
||||
|
||||
Note
|
||||
If you have compiled a Debug, rather than Release solution,
|
||||
you can replace Release with Debug in the source file names
|
||||
shown above.
|
||||
If you want to benchmark MySQL, you should also do this:
|
||||
C:\workdir> xcopy sql-bench\*.* C:\mysql\bench /E
|
||||
|
||||
After installation, set up and start the server in the same way as
|
||||
for binary Windows distributions. This includes creating the
|
||||
system tables by running mysql_install_db. For more information,
|
||||
see Section 2.5, "Installing MySQL on Windows."
|
||||
|
|
Loading…
Reference in a new issue