vitess是youtub开源的一款mysql代理,在ubuntu下编译非常方便。可是在centos下且不能訪问google的情况下坑比較多。近期依据其bootstrap.sh脚本手工编译成功。把过程贴处来供有兴趣的朋友參考一下。



升级automake
wget ftp://ftp.pbone.net/mirror/ftp5.gwdg.de/pub/opensuse/repositories/home:/monkeyiq:/centos6updates/CentOS_CentOS-6/noarch/automake-1.13.4-3.2.noarch.rpm

rpm -Uvh autoconf-2.69-12.2.noarch.rpm
rpm -Uvh automake-1.13.4-3.2.noarch.rpm


升级python-setuptools  root用户运行 wget https://bootstrap.pypa.io/ez_setup.py -O - | python 假设安装失败手动安装过程例如以下
tar zxvf setuptools-17.0.tar.gz
cd setuptools-17.0
python ez_setup.py 


升级pip到7.0.1 wget https://bootstrap.pypa.io/get-pip.py;python get-pip.py
安装virtualenv13.0.1
;pip install virtualenv
ln -s /usr/local/bin/python2.7 /usr/bin/python2.7

-------------------------------------------------------------
. ./dev.env

安装zookeeper
rm -fr $VTROOT/dist/vt-zookeeper-3.3.5
cd $VTTOP/third_party/zookeeper
tar -xjf zookeeper-3.3.5.tbz
mkdir -p $VTROOT/dist/vt-zookeeper-3.3.5/lib
cp zookeeper-3.3.5/contrib/fatjar/zookeeper-3.3.5-fatjar.jar $VTROOT/dist/vt-zookeeper-3.3.5/lib
cd zookeeper-3.3.5/src/c 
./configure --prefix=$VTROOT/dist/vt-zookeeper-3.3.5
make -j3 install
cd $VTTOP/third_party/zookeeper
rm -fr zookeeper-3.3.5

# install protoc and proto python libraries
protobuf_dist=$VTROOT/dist/protobuf

rm -rf  $VTROOT/dist/protobuf
cd $VTROOT
mkdir -p $VTROOT/dist/protobuf/lib/python2.7/site-packages
export PYTHONPATH=$VTROOT/dist/protobuf/lib/python2.7/site-packages:$PYTHONPATH
參考./travis/install_protobuf.sh运行例如以下操作
cd $VTROOT/protobuf-3.0.0-alpha-1
自带梯子,下载并解压gtest在$VTROOT/protobuf-3.0.0-alpha-1文件夹
./autogen.sh $VTROOT/dist/protobuf
./configure --prefix=$VTROOT/dist/protobuf
cd python/
python setup.py install

# install gRPC C++ base, so we can install the python adapters
grpc_dist=$VTROOT/dist/grpc

  rm -rf $VTROOT/dist/grpc
  mkdir -p $VTROOT/dist/grpc
 參考 ./travis/install_grpc.sh 运行
cd grpc
git submodule update --init
make install prefix=$VTROOT/dist/grpc
pip install -r src/python/requirements.txt -t $VTROOT/dist/grpc/lib/python2.7/site-packages
CFLAGS=-I$VTROOT/dist/grpc/include LDFLAGS=-L$VTROOT/dist/grpc/lib pip install --upgrade src/python/src -t $VTROOT/dist/grpc/lib/python2.7/site-packages

ln -nfs $VTTOP/third_party/go/launchpad.net $VTROOT/src
go install launchpad.net/gozk/zookeeper

go get -u github.com/golang/protobuf/proto
go get -u github.com/golang/glog
go get -u -a github.com/golang/protobuf/protoc-gen-go

下面go package在墙外须要手工下载编译,golang中国提供对应打包下载http://www.golangtc.com/download/package
go get -u golang.org/x/net/context
go get -u golang.org/x/tools/cmd/goimports
go get -u github.com/golang/lint/golint
go get -u github.com/tools/godep
go get -u google.golang.org/grpc


go get -u github.com/modocache/gover
go get -u github.com/mattn/goveralls

ln -snf $VTTOP/config $VTROOT/config
ln -snf $VTTOP/data $VTROOT/data
ln -snf $VTTOP/py $VTROOT/py-vtdb
ln -snf $VTTOP/go/zk/zkctl/zksrv.sh $VTROOT/bin/zksrv.sh
ln -snf $VTTOP/test/vthook-test.sh $VTROOT/vthook/test.sh

echo "$MYSQL_FLAVOR" > $VTROOT/dist/MYSQL_FLAVOR
cp $VTTOP/config/gomysql.pc.tmpl $VTROOT/lib/gomysql.pc
echo "Version:" "$($VT_MYSQL_ROOT/bin/mysql_config --version)" >> $VTROOT/lib/gomysql.pc
echo "Cflags:" "$($VT_MYSQL_ROOT/bin/mysql_config --cflags) -ggdb -fPIC" >> $VTROOT/lib/gomysql.pc
echo "Libs:" "$($VT_MYSQL_ROOT/bin/mysql_config --libs_r)" >> $VTROOT/lib/gomysql.pc


# install bson
cd $VTTOP/third_party/py/bson-0.3.2
python ./setup.py install --prefix=$VTROOT/dist/py-vt-bson-0.3.2
rm -r build

# install cbson
cd $VTTOP/py/cbson
python ./setup.py install --prefix=$VTROOT/dist/py-cbson

# create pre-commit hooks
ln -sf $VTTOP/misc/git/pre-commit $VTTOP/.git/hooks/pre-commit

centos6下手工编译vitess的更多相关文章

  1. CentOS6下编译安装Python2.7.6方法

    关于在CentOS6下编译安装Python2.7.6的方法非常的多了,小编以前也介绍过相关的文章了,下面一聚教程小编再来为各位介绍一下吧,希望文章能帮助到各位.   CentOS下面Python在升级 ...

  2. Centos6下编译LEDE/OpenWrt

    准备工作 1. 安装依赖软件 这是官方文档提供的依赖列表 yum install subversion binutils bzip2 gcc gcc-c++ gawk gettext flex ncu ...

  3. Centos6下Python3的编译安装

    本文转载自 Centos6下Python3的编译安装 系统环境:CentOS 6.8-Minimal 安装Python依赖包: 1 [root@Python src]# yum install zli ...

  4. CentOS6 下编译安装 MySQL 5.6.26

    CentOS6下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.26. 一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | ...

  5. CentOS6.9下手动编译并安装Python3.7.0

    CentOS6.9默认安装的python版本为2.6.6,若想安装python3以上版本,只能手工编译安装 下面介绍Python-3.7.0版本的手动编译并安装的步骤 1.下载Python-3.7.0 ...

  6. VPS CentOS-6 下 LNMP HTTP服务器的搭建

    VPS CentOS-6 下 LNMP HTTP服务器的搭建 前言 恢复更新后的第一篇博文, 前段时间由于各种理由, 把博客更新给宕掉了, 个人独立博客的开发也搁浅了, 现在随着工作的逐步稳定, 决心 ...

  7. CentOS6下Haproxy的安装配置

    Haproxy 是一个开源的负载均衡和反向代理软件,其提供了高可用的网络服务.其一般是应用于web服务,但同时也能为SMTP和终端服务等提供可靠的支持. 1.下载安装haproxy wget ftp: ...

  8. opencv手工编译

    opencv手工编译方法1.下载cmake gui2.在where is the source code路径下配置opencv根目录,在where to build the binaries路径下配置 ...

  9. [转]在ubuntu linux下以编译方式安装LAMP(apache mysql php)环境

    FROM : http://www.cnblogs.com/eleganthqy/archive/2010/02/28/1675217.html 最近转向到了使用ubuntu做桌面,安装好系统以来一直 ...

随机推荐

  1. LIS【p1704】寻找最优美做题曲线

    Description 洛谷OJ刷题有个有趣的评测功能,就是系统自动绘制出用户的"做题曲线".所谓做题曲线就是一条曲线,或者说是折线,是这样定义的:假设某用户在第b[i]天AC了c ...

  2. hiho一下第129周 后缀自动机二·重复旋律6

    后缀自动机三·重复旋律6 时间限制:15000ms 单点时限:3000ms 内存限制:512MB 描述 小Hi平时的一大兴趣爱好就是演奏钢琴.我们知道一个音乐旋律被表示为一段数构成的数列. 现在小Hi ...

  3. 最近公共祖先 Least Common Ancestors(LCA)算法 --- 与RMQ问题的转换

    [简介] LCA(T,u,v):在有根树T中,询问一个距离根最远的结点x,使得x同时为结点u.v的祖先. RMQ(A,i,j):对于线性序列A中,询问区间[i,j]上的最值.见我的博客---RMQ - ...

  4. springmvc使用StringHttpMessageConverter需要配置编码

    Spring controller 如下 @Controller public class SimpleController { @ResponseBody @RequestMapping(value ...

  5. mybatis-mysql小优化

    原文:http://blog.csdn.net/jinzhencs/article/details/51656548 1.查询某条记录是否存在 <!-- 查询s是否被创建过:Uuid,name, ...

  6. DoTween 部分中文文档

    前言 DOTween现在还处于 alpha,所以还有一些缺失的功能(如路径插件,附加回调和其它的tween选项),这个文档在不久的将来可能会改变. 一.术语 Tweener 一个tween控制valu ...

  7. Incorrect key file for table '/tmp/#sql_46fd_0.MYI'; try to repair it

    当查询数量很大时,(我的数据库70万数据),会导致这个错误,这是MYSQL中的一个bug. 解决方法 :   1. 修复表 check table tablename. 查看表的状态.如果有错误,则需 ...

  8. python测试与调试提示

    测试与调试提示 2.1 在交互模式输入一个python语句就会执行一个.在调试程序时,这种模式尤其有用. 2.2 在一个文件调用python解释器后,解释器会在文件中的最后一个语句执行之后推出.然而, ...

  9. python移植性提示

    移植性提示 2.1 预计在python3.0中,运算符/只能执行True除法.3.0发布后,程序员要更新自己的程序,以兼容新行为. 3.1 python2.0版本开始引入增量赋值符号,在老版本pyth ...

  10. MySQL MID()函数用法

    SQL MID() 函数用于得到一个字符串的一部分.这个函数被MySQL支持,但不被MS SQL Server和Oracle支持.在SQL Server, Oracle 数据库中,我们可以使用 SQL ...