您的位置:首页 > 数据库 > MySQL

MySQL-5.6.15 +vs2012 源代码安装

2015-08-30 19:46 525 查看
1.MySQL-5.6.15源代码下载地址:http://pan.baidu.com/s/1hqwCUxu

其他版本的下载地址:http://mirrors.sohu.com/mysql/

2.安装(1)ActivePerl(2)Cmake(3)Bison,百度一下,就可以找到安装包。

安装时要注意:

1)路径不要出现中文字符,空格及特殊字符

2)安装完,可以在cmd下,用where cmake  /where perl/where bison来验证安装是否成功。如果没有显示,请手动设置他们安装目录下的bin所在路径加入环境变量中。

 



3.开始安装mysql

1)我把mysql-5.6.15.zip解压到F盘下,这个解压路径也最好不要有中文字符。



 

解压好后,我的F盘下有了mysql-5.6.15,用cmd切换到F:\mysql-5.6.15

执行以下命令:

F:\mysql-5.6.15>mkdir bld

F:\mysql-5.6.15>cd bld

F:\mysql-5.6.15>cmake .. -G “Visual Studio 11 2012”

(注意上面有两点 .. ,两点左右都有空格,-G也是) 

当cmd出现:

--Configuring done

--Generating done

没有错误就完成 

这样,在bld目录下,就生成了vs2012的解决方案了: MySQL.sln

2)为了尽可能减少警告或错误,我们首先需要对下述文件进行修改:

mysql-5.6.15\strings\ctype-czech.c

mysql-5.6.15\strings\ctype-latin1.c

mysql-5
a07c
.6.15\strings\decimal.c

mysql-5.6.15\mysys\thr_mutex.c

mysql-5.6.15\storage\innobase\include\ut0mem.h

mysql-5.6.15\sql\sql_locale.cc

修改的方法很简单,就是将这些文件以UTF-8(带BOM头的)格式保存。一般使用Nodepad++工具等。

3)找到mysql-5.6.15\sql\mysqld.cc中的test_lc_time_sz()函数,将其中的DBUG_ASSERT(0)改为DBUG_ASSERT(1)即可。

4) 在C:\Windows下,新建my.ini

内容如下:

[mysqld]

# set basedir to your installation path

basedir=F:/mysql-5.6.15/bld/sql

# set datadir to the location of your data directory

datadir=F:/mysql-5.6.15/bld/sql/data

5)把mysql-5.6.15\bld\sql\share\english\errmsg.sys拷贝到mysql-5.6.15\bld\sql\share\

6)下载 http://pan.baidu.com/s/1qWFZwAw,这个初始化的user表,把它解压后得到mysql的文件夹,把该文件夹拷贝到mysql-5.6.15\bld\sql\data\
至此我们就完成了将源码转换成VS中工程文件的目的。之后我们就可以build solution了。如果没有错误说明就已经没有问题了,一些小的警告可能是因为C++编译器比C编译器严格的缘故。下一步我们开始调试。

4.调试

对整个解决方案编译…这会花好长长长的时间。

然后将mysqld工程的:右键->属性->调试->命令参数,设为—console,如下:



启动实例:

对mysqld工程的 :右键->调试->启动新实例

这样就可以看到下面的命令行界面:



  这么就启动了以3306为端口的mysqld进程,ready for connections

启动mysql客户端:

首先,在vs2012下,对mysql工程:右键->生成 

这样,mysql-5.6.15\bld\client\Debug 下生成了mysql.exe

我们用 cmd切换到F:\mysql-5.6.15\bld\client\Debug\执行命令

F:\mysql-5.6.15\bld\client\Debug>mysql -u root -p

Enter password:

输入密码:passw0rdMySql  

(上面那个是零不是欧)

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息