首页 > 代码库 > 在win7 下编译MySQL源码
在win7 下编译MySQL源码
MySQL是一款优秀的开源数据库,在阿里、网易等各个互联网公司中有着广泛的应用。尽管各种NoSQL大行其道,但是关系型数据库依然必不可少。
作为一个新手,在Win7下用源码安装MySql数据库并不容易。我自己都折腾了好几天。今天把安装过程记录下来,其一是为了方便自己以后学习,其二则是分享过程,让学习者能够从我这篇文章中受益。
1. 编译环境及源码下载
编译环境:Visual Studio 2010 (Win7 32位)
编译工具:
bison-2.4.1-setup.exe
下载地址:http://nchc.dl.sourceforge.net/project/gnuwin32/bison/2.4.1/bison-2.4.1-setup.exe
安装位置:D:\GnuWin32
cmake-3.0.0-win32-x86.exe
下载地址:http://www.cmake.org/files/v3.0/cmake-3.0.0-win32-x86.exe
安装位置:D:\CMake
MySQL源码:mysql-5.5.31.zip
下载地址:http://downloads.skysql.com/archives/mysql-5.5/mysql-5.5.31.zip
注意: cmake和bison的安装路径不要有空格,并且把cmake和bison都加到环境变量path下,cmake在安装的时候有选择项,bison需要手动添加。
2. 编译MySQL源码
把MySQL源码解压到D:\mysql-source目录下,最后形成了目录结构如下:
第一步:在上图的目录中打开命令行窗口,并输入如下的命令:
这就是用cmake生成vs 2010的解决方案,其中的“.”表示当前目录。
第二步:用记事本把D:\mysql-source\mysql-5.5.31\sql\sql_locale.cc另存为utf8格式。
第三步:把源码工程导入到VS 2010中。【文件】->【打开】->【项目/解决方案】,选择D:\mysql-source\mysql-5.5.31\MySQL.sln文件,确定即可。导入后的截图如下:
第四步:编译mysqld。到mysqld项目,然后【鼠标右键】->【生成】即可,如果出错,再编译一次;如果再次出错,请检查你的cmake和bison的安装及环境变量设置。
最后在D:\mysql-source\mysql-5.5.31\sql\Debug目录下生成mysqld.exe,则表示编译成功。
编译后,可以试着运行一下,转到D:\mysql-source\mysql-5.5.31\sql\Debug目录,打开命令行工具,并输入如下的命令:mysqld.exe --debug --standalone
看到一个断言错误,并标注了源码文件及行号:mysqld.cc line 4233,那么我们定位到源码:
并把该行代码注释掉。并重新编译mysqld工程。再次运行刚才的命令,没有报错。
第五步:验证程序
为了证明编译的mysqld.exe能够正常工程,下载mysql免安装版mysql-5.5.31-win32 zip,下载地址为:http://cdn.mysql.com/archives/mysql-5.5/mysql-5.5.31-win32.zip解压到D:\MySql\official-mysql目录后,用自己编译好的mysqld.exe替换D:\MySql\official-mysql\bin\mysqld.exe。然后在命令行运行mysqld.exe,启动服务端程序。
然后再打开一个命令行窗口,输入mysql -uroot -p, 由于没有设置密码,输入密码处直接回车,连接到数据库。
最后,别忘记在命令行窗口输入:mysqladmin.exe -uroot shutdown命令来关闭mysql服务。
本文出自 “每天进步一点点” 博客,请务必保留此出处http://sbp810050504.blog.51cto.com/2799422/1429838