欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 养生 > ClickHouse集群的安装

ClickHouse集群的安装

2025/4/18 13:43:01 来源:https://blog.csdn.net/md54333/article/details/141330381  浏览:    关键词:ClickHouse集群的安装

目录

1.clickhouse中文文档地址

2.centos安装部署

2.1采用tgz的方式安装

2.2修改配置文件

2.3修改数据目录

2.4创建角色和目录

3 集群安装

3.1配置文件修改

3.2启动zookeeper

3.3启动clickhouse-server

3.4任意节点连接clickhouse

3.5查看集群

3.6建库

3.7查看数据库

3.8创建本地表

3.9创建分布式表


1.clickhouse中文文档地址

ClickHouse教程 | ClickHouse Docs

2.centos安装部署

2.1采用tgz的方式安装

官网上安装部署有比较详细的说明,具体文档地址如下,支持deb、rpm、tgz、docker等安装部署方式
https://clickhouse.com/docs/zh/getting-started/install/


tgz包下载地址:
https://packages.clickhouse.com/tgz/
https://github.com/ClickHouse/ClickHouse/releases

tgz包上传到同一个目录下,执行以下操作

tar -zxvf clickhouse-common-static-21.1.9.41.tgz -C /opt/clickhouse/tar -zxvf clickhouse-common-static-dbg-21.1.9.41.tgz -C /opt/clickhouse/tar -zxvf clickhouse-server-21.1.9.41.tgz -C /opt/clickhouse/tar -zxvf clickhouse-client-21.1.9.41.tgz -C /opt/clickhouse/sh doinst.sh

2.2修改配置文件

vi /etc/clickhouse-server/config.d/listen.xml<listen_host>0.0.0.0</listen_host>

vim /etc/clickhouse-server/config.xml<!-- <listen_host>::</listen_host> --><listen_host>0.0.0.0</listen_host><tcp_port>9002</tcp_port>

启动:
 

systemctl start clickhouse-server

登录:

clickhouse-client --port 9002 -m --password root

密码”root”为安装时设置的密码

2.3修改数据目录

如果后期需要修改,可按照此步骤执行。

配置文件  config.xml

clickhouse默认数据目录在 /var/lib/clickhouse, 一般分区空间有限,需要修改。
只要停止数据库之后移走该目录再软连接回原地址,即可不修改config.xml实现对数据目录的修改。

#先停库sudo clickhouse stopsudo mkdir -p /data01/ch/#权限一定要修改否则没权限就启动不了sudo chown -R clickhouse:clickhouse /data01/chsudo mv /var/lib/clickhouse /data01/ch/#建立软连接sudo ln -s /data01/ch/clickhouse /var/lib/clickhousesudo chown -R clickhouse:clickhouse /var/lib/clickhousesudo ls -l /var/lib/clickhouse#启动sudo clickhouse start

2.4创建角色和目录

创建角色
创建一个角色acaidb_rw, 该角色针对数据库acaidb具备读写权限。

CREATE ROLE acaidb_rw;
GRANT SELECT, INSERT, ALTER UPDATE, ALTER DELETE ON acaidb.* TO acaidb_rw;

如果让一个角色只允许select,不允许修改数据,下面的语句就可以。

CREATE ROLE acaidb_read;
GRANT SELECT ON acaidb.* TO acaidb_read;

创建普通账户并赋权
我们分别创建账户reader和writer,然后把只读角色ro分配给reader,把读写角色分配给writer。这样,reader拥有只读权限,writer拥有读写权限。 新建一个数据库用户acai,并设置密码(将下文的<你的密码>替换)。并给用户acai赋予读写权限角色acaidb_rw 。

CREATE USER IF NOT EXISTS acai IDENTIFIED WITH sha256_password BY '<你的密码>';GRANT acaidb_rw TO acai;

使用下列命令访问clickhouse数据,show databases得到acaidb,说明我们成功了。因为acai用户只能访问acaidb。

# clickhouse-client -m -u acai --password '<你的密码>' --query 'show databases;'

3 集群安装

3.1配置文件修改

添加:

<test_cluster_three_shards_internal_replication><shard><internal_replication>true</internal_replication><replica><host>master</host><port>9002</port></replica></shard><shard><internal_replication>true</internal_replication><replica><host>slave1</host><port>9002</port></replica></shard><shard><internal_replication>true</internal_replication><replica><host>slave2</host><port>9002</port></replica></shard></test_cluster_three_shards_internal_replication><zookeeper><node><host>master</host><port>2181</port></node><node><host>slave1</host><port>2181</port></node><node><host>slave2</host><port>2181</port></node></zookeeper><macros><shard>01</shard><replica>master-replica01</replica></macros>

3.2启动zookeeper

见文档《hbase文档》

3.3启动clickhouse-server

systemctl start clickhouse-server

3.4任意节点连接clickhouse

clickhouse-client --host=slave2 --port=9002 -m --password root

3.5查看集群

select cluster,shard_num,replica_num,host_name,port,user,is_local from system.clusters;Select version();

3.6建库

 

3.7查看数据库

Show databases;Show create database test01;

3.8创建本地表

      

3.9创建分布式表


 

db:数据库名。

local_table_name:对应的已经创建的本地表表名。

shard table:同上,对应的已经创建的本地表表名。

sharding_key:分片表达式。可以是一个字段,例如user_id(integer类型),通过对余数值进行取余分片;也可以是一个表达式,例如rand(),通过rand()函数返回值/shards总权重分片;为了分片更均匀,可以加上hash函数,如intHash64(user_id)

参考:https://blog.csdn.net/mnasd/article/details/127648739

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词