1.clickhouse-client 

clickhouse-client --multiline -h 192.168.107.216 --port 9000 -u ck --password ur6LMIUD   # --multiline:SQL以逗号结束 不带这么输入一行sql

2.创建数据库

CREATE DATABASE IF NOT EXISTS data_center; # 所有集群都要建这个数据库   F NOT EXISTS:如果创建的库存在不会报错

3.创建表

DROP TABLE IF EXISTS data_center.test_local ON CLUSTER shunwang_clickhouse;   # 删除集群上在这张表
CREATE TABLE IF NOT EXISTS data_center.test_local ON CLUSTER shunwang_clickhouse (   # IF NOT EXISTS:表存在不创建  表不存在就创建   ON CLUSTER: 在任何一个节点创建在张表其他节点也会创建这张表  shunwang_clickhouse: 集群名
  `id` UInt32 COMMENT 'id',   # COMMENT 'id':给字段添加备注
  `name` String COMMENT '名称'
) ENGINE = MergeTree()
ORDER BY
  (
    id
  )  SETTINGS index_granularity = 8192; 

4.创建分布表

DROP TABLE IF EXISTS data_center.test ON CLUSTER shunwang_clickhouse;  # 删除集群上在这张表
CREATE TABLE IF NOT EXISTS test ON CLUSTER shunwang_clickhouse AS data_center.test_local   # # 在每台机器上建这个表 这个不是用来存数据的 是管理管理的  ON CLUSTER: 在任何一个节点创建在张表其他节点也会创建这张表  shunwang_clickhouse: 集群名
ENGINE = Distributed(shunwang_clickhouse, data_center, test_local, rand());   # shunwang_clickhouse:集群名称 data_center:库名称 stream_event_text: 表名称 rand():分片KEY,这里分片用rand()函数,表示随机分片

5.导入数据

INSERT INTO stream_event_all SELECT * FROM stream_event;   # 导入数据   数据会随机写入到集群中的数据库对应的表中