docker pull yandex/clickhouse-server
我的命令:
docker run -d --name clickhouse-server --ulimit nofile=262144:262144 -p 8123:8123 -p 9000:9000 yandex/clickhouse-server
大家也可以使用:
docker run -d --name clickhouse-server --restart=always --ulimit nofile=262144:262144 -p 8123:8123 -p 9001:9000 yandex/clickhouse-server
docker exec -it clickhouse-server /bin/bash
clickhouse-client
show databases
use default
show tables
CREATE TABLE IF NOT EXISTS student
(
stuid String COMMENT '学号',
class_id Nullable(String) COMMENT '班级',
name_id Nullable(String) COMMENT '名字'
) ENGINE = MergeTree() PARTITION BY stuid
ORDER BY (stuid)
PRIMARY KEY (stuid) SETTINGS index_granularity=8192;
insert into student (stuid,class_id,name)
values('10022','2302','xiaoming');
select * from student
配置文件路径一般为/etc/clickhouse-server/config.xml,在配置文件中添加如下一行
::
/etc/clickhouse-server/
vim config.xml
:: 取消注释
注意一定要配成 :: 而且要将其他本地监视连接注释,0.0.0.0将导致本地的命令行客户端无法连接,本地命令行客户端使用的是ipv6地址
vim users.xml
::/0
如果修改密码
修改users.xml中password,无需重启即可生效
保存后重启服务,再重新用DBeaver连接可成功
systemctl restart clickhouse-server.service
也可以直接重启容器
docker ps -a 查看对应的容器id
docker restart 容器id
连接docker
可以使用dbeaver 作为clickhouse的连接工具
默认账户default ,密码为空
clickhouse的主要配置文件在 /etc/clickhouse-server目录下
在该目录下,我们可以看到config.xml以及users.xml两个配置文件
(1)config.xml是系统相关的配置项,包括系统的启动端口、配置文件存储位置等等
(2)users.xml 是用户相关的配置项,包括了系统参数的设定、用户的定义、权限以及熔断机制等等
打开users.xml,找到标签,该标签定义了用户信息
password用于设置登录密码,支持明文、SHA256加密和double_shal加密三种形式,我们可以根据实际需求,认选一种进行配置。我们下面介绍最简单的,明文修改密码
明文密码:直接通过password标签定义
123 --注意:当password标签为空时,代表免密码登录。
我是用dockers安装的,所以重启命令为:
docker restart 容器id
密码设定完成之后,直接使用clickhouse-client连接clickhouse-server客户端就不能成功了,会提示密码错误或用户不存在。此时我们应该指定登录密码,命令如下:
//-u 为指定使用哪个账号进行登录,如不指定。默认使用default
clickhouse-client -u default --password 123