MySQL源码学习第一回:Windows调试MySQL

说起来,布署调试系统之前试过两次,到后来都因为没坚持下来而半途作费。这次终于成功了。

(1) 为了少走弯路,建议下载5.1.x版本。

  网上关于在win32系统布署调试环境的贴子本来就少,官网的资料也都是英文,对于不习惯看英文的人可算是折磨。并且,就那么少的贴子说的内容说的还是5.1.x版本的办法(我事后才知道),对于习惯下载最新版人的人来说,算是一头雾水,因为刚开始要用win目录下的configure.js文件,而5.5.x版本并没有这个文件。还以为自己下错版本了。所以,建议第一次想研读源码的人最好下载5.1.x版本的源码。我这里给个地址。

http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.60.tar.gz/from/http://mysql.cs.pu.edu.tw/.版本是5.1.6。完全可以当成首选源码来研读。我下面所说的也是针对这个版本而来的。

(2) 事先需要安装的软件

  1.cmake 下载地址:http://www.cmake.org/files/v2.8/cmake-2.8.6-win32-x86.exe

  2.bison 下载地址:http://buct-compiler.googlecode.com/files/bison-2.4.1-setup.exe

  3.注意事项:软件安装路径不要带空格,将cmake,bison安装路径添加到环境变量中去。

(3)修改源代码

  1.将源代码解压到指定目录。

  2.修改两处源代码,1处:sql/sql_locale.cc文件原先是用"UTF8无BOM格式",另存"UTF8格式". 2 处:sql/mysqld.cc中4352行代码"DBUG_ASSERT(0);",将其改成"DBUG_ASSERT(1);"

(4) 在cmd命令行执行命令

  1.执行:win\configure.js WITH_INNOBASE_STORAGE_ENGINE MYSQL_SERVER_SUFFIX=-pro.不出意外的话,会弹出一个对话框。

  2.如果是VS2005,执行win\build-vs8.bat;如果是VS2008,执行win\build-vs9.bat

(5) 建立data文件夹,开启MYSQL服务

  在sql/目录下,建立data文件夹

  进入sql/debug目录,有一个mysqld.exe文件,执行:mysqld.exe --debug --standalone 开启服务。如果遇到错误,可以查看err文件,文件在sql/data/目录下。一般需要将win/data/mysql目录拷贝到sql/data/目录下。

(6)点击解压根目录下的mysql.sln文件,生成解决方案

  在解压根目录下,有个mysql.sln文件。双击,会看到熟悉的画面。这个时候再生成解决方案,看有没有错误。

 (7) 使用VS2008 调试

  调试--> 附加到进程,选择之前开启的mysqld.exe服务。设置好断点,新建立一个连接,开始调试。

到这一步,布署调试环境已经就绪。从现在开始就可以开始研读源码了。

你可能感兴趣的:(windows)