ClickHouse是一款面向列存储的数据库,主打的是查询多于写入,也就是所谓的在线分析处理(OLAP)系统。 备注:下图仅为单机版安装
配置存储库安装
有外网的情况下,可以直接使用存储库来安装。
1、添加存储库
添加官方存储库,用来做yum源,建议使用stable版本。
[root@localhost ~]# yum -y install yum-utils
[root@localhost ~]# rpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPG
[root@localhost ~]# yum-config-manager --add-repo https://repo.clickhouse.tech/rpm/stable/x86_64
2、安装clickhouse
这里安装的是服务端和客户端
[root@localhost ~]# yum -y install clickhouse-server clickhouse-client
3、启动clickhouse服务
[root@localhost ~]# systemctl start clickhouse-server.service
4、查看clickhouse服务状态
[root@localhost ~]# systemctl status clickhouse-server.service
5、测试连接
[root@localhost ~]# clickhouse-client
6、开放默认端口
这里主要是根据需求来开放端口(主要是让局域网其他服务器访问到clickhouse服务),http默认端口是8123,故我们这里只默认开放8123端口。
[root@localhost src]# firewall-cmd --permanent --zone=public --add-port=8123/tcp
[root@localhost clickhouse-server]# systemctl stop firewalld
[root@localhost clickhouse-server]# systemctl start firewalld
7、创建数据目录并配置参数文件
默认参数文件在/etc/clickhouse-server目录下,并且没有读写权限,授权读写权限,更改部分参数。 默认数据目录在/var目录中,通常/var空间不会很大,需要在大空间目录下创建存放clickhouse数据和日志的目录。 参数详解:
- log 日志文件存放位置
- errorlog 错误日志文件存放位置
- path 数据文件存放位置
- tmp_path 临时文件存放位置
[root@localhost src]# chmod +wr /etc/clickhouse-server/config.xml
[root@localhost src]# mkdir /home/clickhouse-data
[root@localhost src]# chown clickhouse:clickhouse -R /home/clickhouse-data
[root@localhost src]# vim /etc/clickhouse-server/config.xml
<log>/home/clickhouse-data/clickhouse-server/clickhouse-server.log</log>
<errorlog>/home/clickhouse-data/clickhouse-server/clickhouse-server.err.log</errorlog>
<path>/home/clickhouse-data/clickhouse/</path>
<tmp_path>/home/clickhouse-data/clickhouse/tmp/</tmp_path>
8、重启服务
[root@localhost src]# systemctl stop clickhouse-server.service
[root@localhost src]# systemctl start clickhouse-server.service
Tar包安装
1、官网下载tar包
打开网址,选择stable版本,下载tar包(尽量下载最新版本),具体如下:
- clickhouse-server
- clickhouse-client
- clickhouse-common-static-dbg
- clickhouse-common-static
这四个包必须为同版本。
网址:https://repo.clickhouse.tech/tgz/
2、上传并解压tar包
我这里上传路径为/usr/local/src
[root@localhost src]# cd /usr/local/src
[root@localhost src]# tar -xzvf clickhouse-common-static-21.7.3.14.tgz
[root@localhost src]# tar -xzvf clickhouse-common-static-dbg-21.7.3.14.tgz
[root@localhost src]# tar -xzvf clickhouse-server-21.7.3.14.tgz
[root@localhost src]# tar -xzvf clickhouse-client-21.7.3.14.tgz
3、执行安装脚本和初始化脚本
[root@localhost src]# ./clickhouse-common-static-21.7.3.14/install/doinst.sh
[root@localhost src]# ./clickhouse-common-static-dbg-21.7.3.14/install/doinst.sh
[root@localhost src]# ./clickhouse-server-21.7.3.14/install/doinst.sh
[root@localhost src]# /etc/init.d/clickhouse-server start
[root@localhost src]# ./clickhouse-client-21.7.3.14/install/doinst.sh
4、启动clickhouse服务
[root@localhost src]# systemctl start clickhouse-server.service
5、查看clickhouse服务状态
[root@localhost src]# systemctl status clickhouse-server.service
6、测试连接
因为初始化脚本中配置了default的密码,所以需要使用密码连接
[root@localhost src]# clickhouse-client --password
7、开放默认端口
这里主要是根据需求来开放端口(主要是让局域网其他服务器访问到clickhouse服务),http默认端口是8123,故我们这里只默认开放8123端口。
[root@localhost src]# firewall-cmd --permanent --zone=public --add-port=8123/tcp
[root@localhost src]# systemctl stop firewalld
[root@localhost src]# systemctl start firewalld
8、创建数据目录并配置参数文件
默认参数文件在/etc/clickhouse-server目录下,并且没有读写权限,授权读写权限,更改部分参数。 默认数据目录在/var目录中,通常/var空间不会很大,需要在大空间目录下创建存放clickhouse数据和日志的目录。 参数详解:
- log 日志文件存放位置
- errorlog 错误日志文件存放位置
- max_server_memory_usage 整个集群资源使用限制,默认值为0,会将服务器资源用光,建议设置到内存的80%左右。
- path 数据文件存放位置
- tmp_path 临时文件存放位置
[root@localhost src]# chmod +wr /etc/clickhouse-server/config.xml
[root@localhost src]# mkdir /home/clickhouse-data
[root@localhost src]# chown clickhouse:clickhouse -R /home/clickhouse-data
[root@localhost src]# vim /etc/clickhouse-server/config.xml
<log>/home/clickhouse-data/clickhouse-server/clickhouse-server.log</log>
<errorlog>/home/clickhouse-data/clickhouse-server/clickhouse-server.err.log</errorlog>
<max_server_memory_usage>2147483648</max_server_memory_usage>
<path>/home/clickhouse-data/clickhouse/</path>
<tmp_path>/home/clickhouse-data/clickhouse/tmp/</tmp_path>
9、重启服务
[root@localhost src]# systemctl stop clickhouse-server.service
[root@localhost src]# systemctl start clickhouse-server.service