AliSQL 源码编译

前言

AliSQL 在 2016 云栖大会宣布开放源代码之后,迅速就获得了广泛的关注,目前(2016-10-23) star 数目已达 1187,欢迎访问 AliSQL GitHub 项目关注。社区反应也非常活跃,在 Issue 中提了不少反馈建议,其中有一部分是和编译安装相关的,因为官方目前并没有提供 binary,有同学可能没有 GNU/Linux 环境下编译代码的经验,导致不能直接使用。针对这个问题,本文提供一个非官方 (unofficial) 的编译指导,希望对大家有所帮助。
目前只提供使用最普遍的 GNU/Linux 发行版 Ubuntu 和 CentOS 的编译指导。

Ubuntu 16.04

编译环境准备
编译需要 gcc >= 4.7, cmake >= 2.8,16.04 apt 源里的版本 (gcc = 5.4, cmake = 3.5) 已经够用了,直接安装使用。

apt-get update -y
apt-get install git gcc g++ cmake -y
apt-get install bison libncurses5-dev zlib1g-dev libssl-dev -y

从 GitHub clone 代码

git clone https://github.com/alibaba/AliSQL.git

cmake 配置
MySQL 有非常多的 cmake 参数,大家可以参考官方这个页面,这里的配置只是个参考,大家根据需要修改:

cmake .                              \
 -DCMAKE_BUILD_TYPE="Release"         \
 -DCMAKE_INSTALL_PREFIX="/opt/alisql" \
 -DWITH_EMBEDDED_SERVER=0             \
 -DWITH_EXTRA_CHARSETS=all            \
 -DWITH_MYISAM_STORAGE_ENGINE=1       \
 -DWITH_INNOBASE_STORAGE_ENGINE=1     \
 -DWITH_PARTITION_STORAGE_ENGINE=1    \
 -DWITH_CSV_STORAGE_ENGINE=1          \
 -DWITH_ARCHIVE_STORAGE_ENGINE=1      \
 -DWITH_BLACKHOLE_STORAGE_ENGINE=1    \
 -DWITH_FEDERATED_STORAGE_ENGINE=1    \
 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1   \
 -DWITH_TOKUDB_STORAGE_ENGINE=1

编译安装

make -j4 && make install

-j4 表示开 4 个并发编译进程,加速编译,根据机器 CPU 核数调整,一般是 CPU 核数 + 1,最终二进制安装在 /opt/alisql 目录下。

CentOS 6.8

编译环境准备
CentOS 和 Ubuntu 环境的区别就在这一步,CentOS yum 源里的 gcc 版本是 4.4 的,不满足需求,可以通过我之前介绍过的 devtoolset 来安装高版本 gcc,devtoolset 目前最新套装是 devtoolset-4,包含 gcc 5.2。

yum install centos-release-scl -y
yum install devtoolset-4-gcc-c++ devtoolset-4-gcc -y
yum install cmake git -y
yum install ncurses-devel openssl-devel bison -y


从 GitHub clone 代码

 git clone https://github.com/alibaba/AliSQL.git

cmake 配置
在配置前,要先设置下环境变量,这样才能用到 devtoolset-4 套装里的gcc。

 scl enable devtoolset-4 bash
 cmake .                              \
 -DCMAKE_BUILD_TYPE="Release"         \
 -DCMAKE_INSTALL_PREFIX="/opt/alisql" \
 -DWITH_EMBEDDED_SERVER=0             \
 -DWITH_EXTRA_CHARSETS=all            \
 -DWITH_MYISAM_STORAGE_ENGINE=1       \
 -DWITH_INNOBASE_STORAGE_ENGINE=1     \
 -DWITH_PARTITION_STORAGE_ENGINE=1    \
 -DWITH_CSV_STORAGE_ENGINE=1          \
 -DWITH_ARCHIVE_STORAGE_ENGINE=1      \
 -DWITH_BLACKHOLE_STORAGE_ENGINE=1    \
 -DWITH_FEDERATED_STORAGE_ENGINE=1    \
 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1   \
 -DWITH_TOKUDB_STORAGE_ENGINE=1

编译安装

 make -j4 && make install

玩的开心 ^_^ !

还没有评论,快来抢沙发!

发表评论

  • 😉
  • 😐
  • 😡
  • 😈
  • 🙂
  • 😯
  • 🙁
  • 🙄
  • 😛
  • 😳
  • 😮
  • emoji-mrgree
  • 😆
  • 💡
  • 😀
  • 👿
  • 😥
  • 😎
  • ➡
  • 😕
  • ❓
  • ❗
  • 66 queries in 0.388 seconds