TiDB是一个优秀的开源项目,在学习其核心架构和原理后,想必有小伙伴也想看看代码的具体实现,官方也贴心的给出了环境部署文档 。这里抛砖引玉,详细介绍如何搭建和调试TiDB环境--以PD为例。
1. 安装VSCode
vscode 安装就不累述了,聪明的读者一定都会。需要注意的是需要在VSCode中安装Remote Explorer插件。
2. WSL安装Ubuntu
你可以通过以下命令查看可安装的Ubuntu版本:
wsl.exe --list --online
选择你需要的版本进行安装,例如:
wsl.exe --install Ubuntu-22.04
安装完成后,添加软件来源:
sudo vim /etc/apt/sources.list
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ jammy-security main restricted universe multiverse
sudo apt-get update
sudo apt-get install golang-go
注意:这里jammy对应的是Ubuntu-22.04,如果你使用的是Ubuntu 20.04,那么你应该使用focal;是Ubuntu 18.04,那么你应该使用bionic。sudo apt-get install golang-go 这里主要安装一些第三方库编译时的依赖,比如:github.com/goccy/go-graphviz@v0.0.9/internal/ccall。
下载pd源码:git clone
https://github.com/tikv/pd.git
3. 安装Go环境
下载并解压Go安装包 :
tar -C /usr/local -xvf go1.22.3.linux-amd64.tar.gz
设置环境变量:
export PATH=$PATH:/usr/local/go/bin #/etc/profile
go env -w GOPROXY=https://goproxy.cn,direct
4. 安装dlv调试工具
go install github.com/go-delve/delve/cmd/dlv@latest
mv $GOPATH/go/bin/* /usr/local/go
检查环境:
xxx@DESKTOP-MDMMJR5:~/go/bin$ dlv version
Delve Debugger
Version: 1.22.1
Build: $Id: 0c3470054da6feac5f6dcf3e3e5144a64f7a9a48 $
xxx@DESKTOP-MDMMJR5:~/go/bin$ go version
go version go1.22.3 linux/amd64
xxx@DESKTOP-MDMMJR5:~/go/bin$ go env
GO111MODULE=''
GOARCH='amd64'
最后,按F5键提示安装一些调试工具,点击"install all"即可。
2024-05-15 22:59:31.572 [info] Tools environment: GOPATH=/home/xxx/go
2024-05-15 22:59:31.573 [info] Installing 5 tools at /home/xxx/go/bin
2024-05-15 22:59:31.573 [info] gopls
2024-05-15 22:59:31.573 [info] gotests
2024-05-15 22:59:31.573 [info] gomodifytags
2024-05-15 22:59:31.573 [info] impl
2024-05-15 22:59:31.573 [info] goplay
5. 调试截图
环境部署过程有什么问题,欢迎留言讨论,你的问题可能也是别人的问题,抛出问题你就已经领先一步啦^-^。