前言

大家好,今天我们研究一下mac平台如何使用goland软件调试TiDB,为我们日后学习提供坚实的基础。

Goland 配置

首先下载和安装goland,这里不做过多赘述。

下载和安装完后,打开goland,选择Projects - > Get from VCS

然后会出现如下界面。

这里选择Use token。

接下来我们要去Github登陆账号,然后点击Settings。

Developer settings
Personal access tookens
Generate new token

在Token description中Note中随便填一个描述名称,下面的复选框是你这个token需要的权限,勾上需要的就可以了。

然后点确定,Token就生成了。

在登陆点地方输入Token,就会弹出下面的界面,输入tidb的git地址,点击clone。

这样代码就会下载到本地。

然后打开项目会提示如下:

这里三个选项,我们选择Trust Project,这样可以构建脚本,解决项目的插件,添加依赖项等等。

项目打开之后,接下来我们需要配置一下环境变量,可以使用goland进行配置。

配置GoRoot,点击Goland->Preferences,选择要下载的SDK版本,这里我选择的是go1.17.7版本。

然后它也会自动给你更新需要的Go modules dependices。

不过更新Go modules很慢,最好配置一下代理。点击Goland->Preferences -> Go modules 进行配置,配置如下:

Terminalgo mod tidy

编译和调试

上述的环境配置完成之后,就可以编译和调试了。我们随便找个地方打一下断点。这里选择了conn.go的Run函数上设置断点。

设置完断点,点这个虫子图标。

可以看到Console中显示TiDB-Server已经编译成功并启动。

随便找个MySQL客户端连一下。

./mysql -uroot -h0.0.0.0 -P4000 

然后就会回到我们断点的位置来。

点击Step Over或者是Step Into进行调试,下面的console显示经过了那些函数,还有变量值

至此我们的Goland调试环境就搭建好了,可以愉快地进行研究了。

后记

Goland的编译和调试不是很复杂,相较于其他软件的编译环境配置,可以说不要太简单。接下来让我们开启调试之路。