CentOS 安装ClickHouse

ClickHouse是一款列式分布式数据库,目前在CentOS上都是以rpm来安装的,因为我们可能需要自定义一些功能,并做一些自定义的部署规范需求,比较适合自己进行打包部署。

环境要求

  • CentOS 7
  • gcc-7+、g++-7+
  • cmake3、ccache
  • ClickHouse 18+

首先安装gcc

这里采用的是从源码包安装的方式,从http://mirrors.ustc.edu.cn/gnu/gcc/gcc-7.3.0下载对应的tar.gz包(gcc-7.3.0.tar.gz)。

把下载的包gcc-7.3.0.tar.gz放到服务器上,我是放置在~/gcc目录下。准备好了源码包,接下来是安装下面的三个依赖,如果没有安装,在执行configure的时候会提示安装,按照提示安装即可。

  • sudo yum install gmp-devel
  • sudo yum install mpfr-devel
  • sudo yum install libmpc-devel

然后开始编译

cd ~/gcc
tar zxf gcc-7.3.0.tar.gz
cd gcc-7.3.0
./configure --prefix=~/gcc7 --disable-multilib # 配置将安装到目录~/gcc7,第二个参数是关闭32位指令,仅使用64位
make -j4
make install

经过一段漫长的编译和安装,gcc已经安装在目录~/gcc7了,执行如下的命令查看版本:

~/gcc7/bin/gcc -v

一般为了方便使用,可以建立软连接到/usr/bin,这样可以直接在终端里面使用gcc-7和g++-7了。

sudo ln -s ~/gcc7/bin/gcc /usr/bin/gcc-7
sudo ln -s ~/gcc7/bin/g++ /usr/bin/g++-7

安装cmake3和ccache

编译ClickHouse需要cmake3,直接sudo yum install cmake3和sudo yum install ccache即可

编译ClickHouse

首先clone代码到用户目录(~)下,并更新子模块,拉取子模块的代码,主要是一些依赖的库。

git clone  https://github.com/yandex/ClickHouse.git
cd ClickHouse
git submodule update --init --recursive

配置编译器为gcc7:

export CC=gcc-7 CXX=g++-7

好了可以开始编译了:

cd ~/ClickHouse
mkdir build
cmake3 ..
make

经过一段漫长的时间编译,最后编译好的包就在build/dbms/programs下面,有一个clickhouse的可执行文件,所有的功能都使用这个包,一般是通过使用不同的名字建立软连接到这个文件(比如clickhouse-client和clickhouse-server,代码内部根据名字来确定使用的功能)来使用不同的功能。

你可能感兴趣的:(CentOS 安装ClickHouse)