当前位置:Gxlcms > mysql > 如何编译MySQL内核_MySQL

如何编译MySQL内核_MySQL

时间:2021-07-01 10:21:17 帮助过:28人阅读

在最新的版本中,windows环境与linux环境下使用一套代码。比如mysql-6.0.4-alpha版本中的INSTALL-WIN-SOURCE文件的描述:

  TobuildMySQLonWindowsfromsource,youmustsatisfythe
  followingsystem,compiler,andresourcerequirements:
  *Windows2000,WindowsXP,ornewerversion.WindowsVistais
  notsupporteduntilMicrosoftcertifiesVisualStudio2005on
  Vista.
  *CMake,whichcanbedownloadedfromhttp://www.cmake.org.
  Afterinstalling,modifyyourpathtoincludethecmake
  binary.
  *MicrosoftVisualC++2005ExpressEdition,VisualStudio.Net
  2003(7.1),orVisualStudio2005(8.0)compilersystem.
  *IfyouareusingVisualC++2005ExpressEdition,youmust
  alsoinstallanappropriatePlatformSDK.Moreinformationand
  linkstodownloadsforvariousWindowsplatformsisavailable
  fromhttp://msdn.microsoft.com/platformsdk/.
  *IfyouarecompilingfromaBitKeepertreeormakingchanges
  totheparser,youneedbisonforWindows,whichcanbe
  downloadedfrom
  http://gnuwin32.sourceforge.net/packages/bison.htm.Download
  thepackagelabeled"Completepackage,excludingsources".
  Afterinstallingthepackage,modifyyourpathtoincludethe
  bisonbinaryandensurethatthisbinaryisaccessiblefrom
  VisualStudio.
  *Cygwinmightbenecessaryifyouwanttorunthetestscript
  orpackagethecompiledbinariesandsupportfilesintoaZip
  archive.(Cygwinisneededonlytotestorpackagethe
  distribution,nottobuildit.)Cygwinisavailablefrom
  http://cygwin.com.
  *3GBto5GBofdiskspace.

  通过这样的方法,生成项目文件,从而可以通过vs工具进行编译。在先前的版本中,windows下的代码和linux下的代码是两个压缩包,比如windows下的一个软件包名为,mysql-5.1.7-beta-win-src.zip。

  这里我选择5.1.7作为分析的对象。

  安装代码的步骤:

  1.解压缩文件包mysql-5.1.7-beta-win-src.zip。

  2.使用vs2003打开项目文件mysql.sln。

  3.设置mysqld项目为启动项目
4.在mysqld的属性页设置命令参数为:--console。这样就可以用debug方式调试代码了。

详细讲解如何编译MySQL内核

  图1:配置命令参数

  5.设置断点,比如查询的总入口是handle_select函数。

  6.编译mysql项目,将会在mysql-5.1.7-betaclient_debug目录下生成mysql.exe
7.使用“启动新实例”或者“进入单步执行新实例”进行调试。

详细讲解如何编译MySQL内核

  图2:执行调试操作

  8. mysql-5.1.7-betaclient_debug目录下生成mysql.exe,执行语句,将会执行到断点进行调试。

详细讲解如何编译MySQL内核

  图3:进入调试状态

  9.相应的数据文件,见mysql-5.1.7-betadata目录

人气教程排行