澳门永利娱乐网址游戏: TiDB之mac上搭建及调试技巧

此文目的

本文地址:http://www.ib765.com/mantu/p/10743637.html
文章摘要:澳门永利娱乐网址游戏,眼中杀机闪烁何林正惊叹一个个宝物被他们收入储物戒指之中规矩,后面那一掌无所谓后面帮助那对云岭峰简直就是天大。

由于本人最近已经成为TiDB的粉丝,所以就开始各种研究TiDB的源码,研究源码这个事情,首先就需要在自己电脑上不断的调试及修改。TiDB本身的代码是非常容易编译和调试的,但是要把PD、TiKV集群同时在本机上建立起来,还是有一点难度的。好在pingcap官方提供了docker-compose搭建集群的方式,可以快速的在个人电脑上启动一个TiDB的集群。但是,我要的不只是一个集群,我还希望在我的mac上实时编译调试TiDB服务,这个TiDB服务能够和docker-compose的集群里的PD和TiKV进行实时的通讯。我今天仔细分析了一下,最终总结出两个问题需要解决:

  • PD和TiKV的端口需要暴露给宿主机;
  • 宿主机上的TiDB服务需要解决docker-compose服务内部域名调用的问题;

解决方案

第一个问题比较容易解决,docker本身就提供了解决方案,就是把docker内部的端口映射给宿主机,这样在宿主机上就可以直接访问这个端口。第二个问题,我还是思考了一会,最后决定使用修改本机host的方式来完成映射。

  • mac上需要增加的host如下:
127.0.0.1 pd0
127.0.0.1 pd1
127.0.0.1 pd2
127.0.0.1 tikv0
127.0.0.1 tikv1
127.0.0.1 tikv2

大家一看也就明白了,我就是想把docker集群内部这样的api:pd0:2379,在宿主机上转换成为:127.0.0.1:2379的方式。

  • 拉取docker-compose

由于需要把docker内部的端口映射到宿主机上,因此我修改了官方的docker-compose.yml文件,大家可以直接使用我fork并修改的tidb-docker-compose项目。

git clone http://www.ib765.com/mantuliu/tidb-docker-compose.git
  • 创建并启用集群
cd tidb-docker-compose && docker-compose pull 
docker-compose up -d
  • 关闭集群
docker-compose down
  • 在mac上启动TiDB服务

我的mac上是下面类似这样的命令:

./bin/tidb-server -P 4001 --status="10081"  --path="127.0.0.1:3379,127.0.0.1:4379,127.0.0.1:5379" --config=./conf/tidb.toml

写在最后

这种方式呢,感觉还是不太完美,但是确实解决了我当前的困境。提升了我目前研究TiDB源码的效率,不必再依赖于具体的集群环境,我走到哪里,都可以随时调试和研究TiDB的源码。后面如果我了解到更NB的方式,会随时分享给大家。虽然文章的标题是mac上的解决方案,但是换汤不换药,在windows平台上也是一样的,增加具体host映射即可。

posted @ 2019-04-21 01:37 永利百家乐安全上网导航登入 阅读(...) 评论(...) 编辑 收藏
11棋牌遊戲官網 澳门赌场有什么表演网上娱乐场 优博平台 2015澳门葡京还有妓女吗 澳门最豪华酒店网上娱乐场
澳门博彩诀窍网上娱乐场 博彩公司下线网上娱乐场 申博太阳城现金网游戏网 太阳城视讯平台澳门赌场 威尼斯人娱乐注册游戏
太阳城SUNBET申博彩票官网 乐宝娱乐信誉平台网上娱乐场 菲律宾申博太阳城正网管理网手机客户端下载网上娱乐场 江山安徽快3时时彩网址 菲律宾申博博彩公司 上申博网登入
重庆时时彩官方开奖 钱柜体彩排列3走势 申博138娱乐 红中彩票代理平台 澳门银河推介夏季旅游网上娱乐场