mysql源码开发环境_mysql源码调试(一)环境搭建

操作系统:windows server 2012 R2

VS版本:visio studio 2015 community

机器配置:4core/4G

安装所需包:cmake,bison,boost,activeperl,下面为具体版本

cmake-3.15.0-rc3-win64-x64.msi

boost_1_59.zip(注意boost版本要与mysql版本对应,会在cmake时有报错提示对应哪个版本)

activeperl.exe

bison-2.4.1-setup.exe

相关url:

https://www.boost.org/users/history/version_1_59_0.html

https://www.qqxiazai.com/down/12006.html#download_addr

http://gnuwin32.sourceforge.net/packages/bison.htm

一定要一切以官网说明为王道,官网说明地址,最好下载MySQL 5.7 Reference Manual,这才是MySQL最权威最全面的资料,阅读中文资料可能会有一些困惑,然后阅读MySQL参考手册可以豁然开朗,

另外mysql如果是在官网下载的话,下载source code就是可以。

很多博客都要求安装Bison,但是我没有安装Bison也没有问题,MySQL5.7参考手册上说的很明白,用Standard Source Distribution来build工程不需要Bison,而用Development Source Tree才需要Bsion,从官网上直接下载的标准版的源码ZIP包就是Standard Source Distribution,而在GitHub下载的最新的开发源码就是Development Source Tree。

我这里在官网下载的版本为mysql-5.7.26.zip

8ea1b22386687c80225fc9285f702611.png

安装:

直接运行安装cmake,activeperl,bison,然后将boost解压到一个没有中文与空格的文件夹。

安装完bison之后需手动将bison安装目录添加到系统的环境变量中去。

C:\Program Files (x86)\GnuWin32\bin

安装visio studio 2015

生成VS2015 MySQL工程

解压mysql源码,运行cmake-gui,选择需要编译的源码,和目的目录。

Where is the source code : 选择解压后的源码

Where to build to the binaryies : 选择目的目录,这里我们选择C盘下的mysql目录。

即:

源码目录:C:/Users/chengbin.liu/Desktop/mysql-5.7.26

准备一个文件夹用于Build(路径中不能有中文和空格),文件夹在C:/mysql

e5c64608f4f598f0021fe16ade0f212c.png

接下来需要配置boost库,点击Add Entry添加boost库配置项。

Name: WITH_BOOST

Type选择PATH

Value: 选择第一步中boost库的安装目录

a8125f14608eca4ed39cdf83314121b0.png

点ok之后,接下来我们点击Configure, 选择目标VS版本,

d71024ae146434c9e9500b5a2a4aceb1.png

dacaa399ace91c193c602b5357d9142a.png

点击Finish后,等待运行结束,需要一定时间。

之后点击configure

9df72f25a8398a680fd425b8989eda07.png

Configure结束:

73f8ab829359f7b556cf7b49d0c6a90b.png

点击Generate生成VS2015 Project。

74e9903e39881734c811ac22f3afa79c.png

直接点击”open_project” 按钮即可调用VS2015打开工程 (或进入build目录,双击ALL_BUILD那个project文件调用VS2015打开工程),

94709a632c82d72087fe312638bdb2c2.png

编译:

cdf2f95f2b12d5e5c235c97b178713d3.png

选择最右边解决方案下的ALL_BUILD右键生成。

42639b76d188e964c47d6162ea69ee2f.png

如果没有报错,等待编译结束…(比较漫长的等待)

看到控制台如下输出,恭喜编译成功

调试MySQL之前需要先初始化MySQL数据库,否则会报mysql.user表不存在。

最简单的初始化方法:

VS开始调试前,用VS运行一下mysqld初始化一个默认的数据库实例。一定是debug mysqld子工程设置为启动工程。

在mysqld上点右键->属性

3dda1f1f77c64c72ba1371f8f26f31d5.png

--initialize --explicit_defaults_for_timestamp

调试->命令参数

12da978c445f43bee868dfaf14b7b17c.png

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值