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. hdu6035(树形DP)

    hdu6035 题意 给出一棵树,现在定义两点之间距离为两点间最短路径上颜色集合的大小.问任意两点间距离之和. 分析 换个方向,题目其实等价于求每种颜色在多少条路径上出现过(每种颜色对于答案的贡献), ...

  2. Redis单机部署、添加开机自启、配置参数

    1.Redis简介 redis是使用C语言编写的开源的,支持网络,基于内存,可持久性的键值对存储数据库,2013年5月之前,Redis是最流行的键值对存储数据库,Redis采用内存数据集,支持多种数据 ...

  3. luogu P2828 Switching on the Lights(开关灯)

    题目背景 来源:usaco-2015-dec Farm John 最近新建了一批巨大的牛棚.这些牛棚构成了一个N*N的矩形网络.(1<n<100) 然而bessie十分怕黑,他想计算可以把 ...

  4. [USACO09MAR]Cleaning Up

    题目大意: 给你一个长度为n的序列a,你可以将其分为若干段,最终的答案为每一段不同数个数的平方和. 思路: 不难想到一个O(n^2)的DP: f[i]=min{f[j]+cnt(j,i)^2} 考虑一 ...

  5. Map泛型集合-国家中文和英文的键值映射

    package collection; import java.util.HashMap; import java.util.Map; public class Test5 { public stat ...

  6. PHP开发环境配置系列(四)-XAMPP常用信息

    PHP开发环境配置系列(四)-XAMPP常用信息 博客分类: PHP开发环境配置系列 xamppphp 完成了前面三篇后(<PHP开发环境配置系列(一)-Apache无法启动(SSL冲突)> ...

  7. oracle wm_concat 拼接乱码 显示问号等

    今天用plsql查询工具 拼接sql查询显示乱码,不知道为何. 后来经多方查找资料 现在分享如下. 针对oracle拼接函数的乱码,首先查询一下oracle字符的编码是否支持中文,查询语句: SELE ...

  8. 【转】MySQL5.5的my.cnf 参数详解

    这篇文章很多地方只是翻译了my.cnf原始配置文件的说明 以下原文中有些参数事实上不适用于MySQL5.5,不知道原作者是否有经过实际测试,比如log-slow-queries应该写成slow-que ...

  9. LRC CRC 纵向冗余码校验

    LRC CRC 纵向冗余码校验   2010-01-26 11:00:15|  分类: 电气 |  标签: |字号大中小 订阅  1.LRC校验  LRC域是一个包含一个8位二进制值的字节.LRC值由 ...

  10. onWebView检查网页中文

    问题:要检查网页中的一段文本: 开始我是这样写的: private final static String SPECIFIED_TEXT = "这个是一段中文"; onWebVie ...