win7+vs2013编译mysql

1、准备工作

OS: win7 旗舰版 64位 + VS2013 
mysql 源码(windows版): mysql-5.7.4-m14
perl tool:ActivePerl-5.16.3.1604-MSWin32-x64-298023.msi
Cmake:cmake-3.0.0-win32-x86 .exe
bzr:bzr-2.5.1-1-setup.exe
可以在http://download.csdn.net/detail/cdsdtt123/7930955打包下载。

2、注意事项

安装过程不要有中文字符和空格,路径一般默认;
在安装bison时Don't create a Start Menu Folder选上;Additional icons的两个选项都不要选上;
需要添加环境变量,可以通过--version和where来检查是否安装成功,比如perl --version和where perl;
最后通过cmake配置生成,这里是在D盘新建了mysql文件夹放源码mysql-5.7.4-m14,在mysql-5.7.4-m14中创建bld文件夹存放编译后的代码,目录结构D:\mysql\mysql-5.7.4-m14\bld。

3、源码编译

编译之前需要修改的文件如下,可以用notepad++改成utf8。

C:\MySQLSC\strings\ctype-czech.c

C:\MySQLSC\strings\ctype-latin1.c

C:\MySQLSC\strings\decimal.c

C:\MySQLSC\mysys\thr_mutex.c

c:\mysqlsc\storage\innobase\include\ut0mem.h

C:\MySQLSC\sql\sql_locale.cc

找到mysqld.cc中的test_lc_time_sz()函数,直接注释函数体,或者把DBUG_ASSERT(0);改为DBUG_ASSERT(1);

最后生成,一共有130个工程,成功122个,跳过8个。

4、调试过程

首先将mysqld工程的Debug的:属性->调试->命令参数,设为--console。然后启动实例,右键mysqld工程,调试->启动新实例。或者设置mysqld为启动项。或者进入D:\mysql\mysql-5.7.4-m14\bld\sql\Debug     输入命令 mysqld --debug --standalone这时3306端口开启侦听(netstat -anp tcp)。

  • 调试show databases;命令

VS2013中的调试选项中的附加到进程,选择"mysqld.exe";

进入D:\mysql\mysql-5.7.4-m14\sql\sql_show.cc make_db_list方法中设一个断点;

然后进入D:\mysql\mysql-5.7.4-m14\bld\client\Debug,输入命令 mysql -u root -p ;

进入mysql命令行客户端,mysql命令行客户端,输入命令show databases;就会跳到vs2013中设定的断点处。

  • 调试sql语句执行过程,比如select语句
进入D:\mysql\mysql-5.7.4-m14\sql\sql_parse.cc中的mysql_parse函数体和dispatch_command打断点,
mysql命令行客户端输入sql语句,
可以参考http://blog.csdn.net/wangxingxing2006/article/details/7639919。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值