1.建立文件夹与互信关系
[root@mysql-100 ~]# mkdir -p /app/soft/phxsql
[root@mysql-100 phxsql]# ssh-keygen -t rsa -P ''
[root@mysql-100 phxsql]# more ~/.ssh/id_rsa.pub
[root@mysql-100 phxsql]# vi ~/.ssh/authorized_keys
2.安装包
yum -y install git
yum -y install cmake automake
yum -y groupinstall Development tools
yum install readline readline-devel libstdc++-static glibc-static perl-Module-Install.noarch -y
yum install libtool bison -y
3.获取源码
cd /app/soft/phxsql
git clone --recursive https://github.com/tencent-wechat/phxsql.git [PhxSQL放置目录]
使用--recursive参数可以同时获得所依赖的第三方库glog,leveldb,protobuf源码,也同时获得所依赖的我们自己研发的库phxpaxos,phxrpc,colib。
也可自行下载这些源码,然后自行拷贝或者通过软链的形式放置到third_party目录。
4.安装gcc 4.8.2版本
cd /etc/yum.repos.d
wget http://people.centos.org/tru/devtools-2/devtools-2.repo
yum install -y devtoolset-2-gcc devtoolset-2-binutils devtoolset-2-gcc-c++
安装文件放置位置在:/opt/rh/devtoolset-2
具体程序文件位置在:/opt/rh/devtoolset-2/root/usr/bin/*
使用最新的gcc环境,所以要替换本地的,使用软连接来完成(也可以设置环境变量,看自己喜好)
mv /usr/bin/gcc /usr/bin/gcc-4.4.7
mv /usr/bin/g++ /usr/bin/g++-4.4.7
mv /usr/bin/c++ /usr/bin/c++-4.4.7
ln -s /opt/rh/devtoolset-2/root/usr/bin/gcc /usr/bin/gcc
ln -s /opt/rh/devtoolset-2/root/usr/bin/c++ /usr/bin/c++
ln -s /opt/rh/devtoolset-2/root/usr/bin/g++ /usr/bin/g++
gcc --version
5.安装第三方库
cd /app/phxsql/phxsql/third_parties
./autoinstall.sh
6.编译PhxSQL
1. 下载percona源码
https://www.percona.com/downloads/Percona-Server-5.6/Percona-Server-5.6.31-77.0/source/tarball/percona-server-5.6.31-77.0.tar.gz
,请注意只能使用percona-server-5.6_5.6.31-77.0版本。
2. 解压源码到PhxSQL根目录,并更名为percona.
3. 进入PhxSQL根目录。
4. ./autoinstall.sh (如果提示Curses library not found和Cannot find system readline libraries则需先安装这两个库再执行命令。
5. make && make install (该步骤编译时间较长,请耐心等待)