Windows下编译MySQL数据库是如何实现的呢?本文我们就来介绍这一部分内容,首先我们来看一看它的编译环境。
一.环境准备:
1. 获得MySQL***源码:目前版本为5.1.44:http://dev.mysql.com/downloads/mysql/ (Windows (x86, 32-bit), ZIP Archive),解压到工作目录,如C:/MySQL
2. 安装VS2008,任何版本都可。万一是Express版本,必需再安装Windows SDK, Server 2003 R2 Platform SDK下载地址为:http://om/downloads/details.aspx?FamilyId=F26B1AA4-741A-433A-9BE5-FA919850BDBF&displaylang=en
这里用的是VS2008 Dev版本。
3.安装CMake(Windows版本),下载地址:http://www.3gos.info/gongsi/564.html,旧版本可能不扶持生成VS2008处理计划,推拨取***版本。
4. 安装GNUWin32 Bison,下载地址为:http://gnuwin32.sourceforge.net/packages/bison.htm,同样安装路径良好为英文,并且不要有空格。安装后将bin路径增加到系统环境变量。
5. 安装CygWin,下载地址为:http://om/setup.exe, 抉择模块时要选上Perl and Python模块。
二.编译源代码:
1. 源码目录中sql/sql_locale.cc文件包括各地本地化语言,默认用的UTF-8 without BOM编码。
2. 扼制台进去MySQL根目录,运行Win/configure.js脚本,脚本的参数为:
- WITH_INNOBASE_STORAGE_ENGINE Enable particular storage engines
- WITH_PARTITION_STORAGE_ENGINE
- WITH_ARCHIVE_STORAGE_ENGINE
- WITH_BLACKHOLE_STORAGE_ENGINE
- WITH_EXAMPLE_STORAGE_ENGINE
- WITH_FEDERATED_STORAGE_ENGINE
- __NT__ Enable named pipe support
- MYSQL_SERVER_SUFFIX=<http://www.independence-mo.info/guanyuwomen/628.html;suffix> Server suffix, default none
- COMPILATION_COMMENT=<comment> Server comment, default "Source distribution"
- MYSQL_TCP_PORT=<port> Server port, default 3306
- CYBOZU Default character set is UTF8
- EMBED_MANIFESTS Embed custom manifests into final exes, otherwise VS
- default will be used. (Note - This option should only be
- used by MySQL AB.)
- WITH_EMBEDDED_SERVER Configure solution to produce libmysqld.dll
- and the static mysqlserver.lib
因而,该号召行能够是如下所示。
Cscript win/configure.js WITH_INNOBASE_STORAGE_ENGINE WITH_PARTITION_STORAGE_ENGINE MYSQL_SERVER_SUFFIX=-pro
运行收获该当与如下收获相仿:
- >Microsoft (R) Windows Script Host Version X.X
- Copyright (C) Microsoft Corporation XXXX-XXXX. All rights reserved.
- done!
3. 创立VS处理计划,在MySQL源文件Win目录下有一些批处理:
build-vs71.bat VS2003
build-vs8.bat VS2005
build-vs8_x64.bat VS2005,编译出64bit MySQL
build-vs9.bat VS2008
build-vs9_x64.bat VS2008,编译出64bit MySQL
这些批处理内调用的是CMake,能够在号召行敲入CMake,察看CMake扶持的VS版本。
这里我们用VS2008,目标运行平台为32bit,因而运行Win/build-vs9.bat。
运行后,在MySQL根目录生成了MySql.sln,用VS2008敞开,能够看到有56个项目。
4. 编译:抉择编译形式(如Release),然后编译。编译过程中会生成数千个警告,都是源文件编码引起的(也有可能是我的Windows目前区域选项为中国引起的),可疏忽。
万一编译过程中提醒error PRJ0019: A tool returned an error code from http://www.my9ti.info/jiaru/556.html"Generating sql_yacc.h, sql_yacc.cc”, 大约是GNUWin32 Bison路径中有空格引起的。从output窗口能够看到翔实的出错消息。
关于Windows下编译MySQL数据库的过程就介绍到这里了,希望本次的介绍能够对您有所收获!
【编辑推荐】
- MySQL 5.5 分区之多列分区详解
- MySQL 5.5 分区之truncate分区详解
- MySQL 5.5 分区之非整数列分区详解
- MySQL数据库MVCC多版本并发控制简介
- MySQL 5.5 分区之高级分区实例及性能分析