环境信息:centos7.9,选择clickhouse21.6.6.51版本
1、下载clickhouse离线包
https://repo.clickhouse.tech/rpm/stable/x86_64
#到上面的地址下载clickhouse三个文件,自行选择版本
clickhouse-common-static-21.6.6.51-2.x86_64.rpm
clickhouse-server-21.6.6.51-2.noarch.rpm
clickhouse-client-21.6.6.51-2.noarch.rpm
2、上传文件到服务器目录
[root@hecs-169000 /]# mkdir /data/clickhouse
[root@hecs-169000 /]# cd /data/clickhouse
[root@hecs-169000 clickhouse]# ll
总用量 159984
-rw-r--r-- 1 root root 62996 11月 10 10:23 clickhouse-client-21.6.6.51-2.noarch.rpm
-rw-r--r-- 1 root root 163667677 11月 10 10:29 clickhouse-common-static-21.6.6.51-2.x86_64.rpm
-rw-r--r-- 1 root root 87450 11月 10 10:23 clickhouse-server-21.6.6.51-2.noarch.rpm
3、安装
rpm -ivh clickhouse-common-static-21.6.6.51-2.x86_64.rpm
rpm -ivh clickhouse-server-21.6.6.51-2.noarch.rpm
rpm -ivh clickhouse-client-21.6.6.51-2.noarch.rpm
安装clickhouse-server-21.6.6.51-2.noarch.rpm时,提示设置密码,先回车不管
ps:安装后的clickhouse在/etc/下面
4、安装完毕后设置内容
用命令生成一个密码
PASSWORD=$(base64 < /dev/urandom | head -c14); echo "$PASSWORD"; echo -n "$PASSWORD" | sha256sum | tr -d '-'
[root@iZ2vcer6gtjgq8pi6uq22dZ clickhouse-server]# PASSWORD=$(base64 < /dev/urandom | head -c14); echo "$PASSWORD"; echo -n "$PASSWORD" | sha256sum | tr -d '-'
56QZ3e5CmlGqsW
37f21484eac8ea4c898924a7a89ea9f60dec82aa08eb53c6f12f1cedbc229635
56QZ3e5CmlGqsW是明文密码,下面是对应的密文
编辑/etc/clickhouse-server/users.xml文件,把密文写入
vim /etc/clickhouse-server/users.xml
编辑vim /etc/clickhouse-server/config.xml,开放访问
vim /etc/clickhouse-server/config.xml
打开<listen_host>::</listen_host>
5、启动clickhouse服务
启动:
systemctl start clickhouse-server
查看状态:
systemctl status clickhouse-server
连接:
clickhouse-client -h localhost --port 9000 -u default --password 56QZ3e5CmlGqsW
6、clickhouse操作
和mysql差不多,常用的sql语句那些。
创建表:
create table test(
id UInt32,
user_id String,
name String,
create_time Datetime
) engine =MergeTree
partition by toYYYYMMDD(create_time)
primary key (id)
order by (id,user_id);
删除表:
drop table test;
新增数据:
insert into test values('id', 'user_id', 'name','create_time');
更新数据:
alter table test update name='tom' where id = '002';
删除数据:
alter table test delete where user_id = 'uid1';