Heim  >  Artikel  >  Datenbank  >  如何编译MySQL内核_MySQL

如何编译MySQL内核_MySQL

WBOY
WBOYOriginal
2016-06-01 14:01:061071Durchsuche

在最新的版本中,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目录

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn