需求:在服务器创建clickhouse容器。
参考博客:https://www.jianshu.com/p/f7aafd9f8fdd
一、拉取镜像
#服务端镜像
docker pull yandex/clickhouse-server:21.3.4.25
#客户端镜像
docker pull yandex/clickhouse-client:21.3.4.25
二、启动容器
临时启动,用于获取配置文件
# --rm 启动临时容器,当容器停掉后,容器自动删除
docker run --rm -d --name=clickhouse21 \
--ulimit nofile=262144:262144 \
-p 8123:8123 -p 9009:9009 -p 9000:9000 \
yandex/clickhouse-server:21.3.4.25
三、配置文件拷贝
1、宿主机创建目录,用于存放clickhouse配置文件、数据、日志等
mkdir -p /usr/docker/clickhouse/conf /usr/docker/clickhouse/data /usr/docker/clickhouse/log
2、将容器中的配置文件拷贝到主机
docker cp clickhouse21:/etc/clickhouse-server/users.xml /usr/docker/clickhouse/conf/users.xml
docker cp clickhouse21:/etc/clickhouse-server/config.xml /usr/docker/clickhouse/conf/config.xml
四、停止容器
docker stop clickhouse21
# 停止后容器会立即删除
五、修改密码
1、直接修改配置文件添加密码
# 查看修改前的配置
vim /usr/docker/clickhouse/conf/users.xml
# 可以看见:默认有个用户为default;密码设置在password标签中
在password标签中添加密码并保存
配置账号密码,将生成的密码配置给root账号(users标签中可配置多个账号)
<用户名>
<password>密码</password>
<networks>
<ip>::/0</ip>
</networks>
<profile>default</profile>
<quota>default</quota>
</用户名>
六、重新启动容器
docker run -d --name clickhouse21 \
--ulimit nofile=262144:262144 \
-p 8123:8123 -p 9009:9009 -p 9000:9000 \
-v /usr/docker/clickhouse/conf/config.xml:/etc/clickhouse-server/config.xml \
-v /usr/docker/clickhouse/conf/users.xml:/etc/clickhouse-server/users.xml \
-v /usr/docker/clickhouse/log:/var/log/clickhouse-server:rw \
-v /usr/docker/clickhouse/data:/var/lib/clickhouse:rw \
yandex/clickhouse-server:21.3.4.25
七、连接使用
方式一:使用idea链接使用
方式二:使用clickhouse-client连接使用
进入容器,连接clickhouse使用
docker exec -it clickhouse21 /bin/bash
clickhouse-client -h 127.0.0.1 -d default -m -u 用户名 --password '密码'
命令可用参数:
--host, -h -– 服务端的host名称, 默认是localhost。您可以选择使用host名称或者IPv4或IPv6地址。
--port – 连接的端口,默认值:9000。注意HTTP接口以及TCP原生接口使用的是不同端口。
--user, -u – 用户名。 默认值:default。
--password – 密码。 默认值:空字符串。
--query, -q – 使用非交互模式查询。
--database, -d – 默认当前操作的数据库. 默认值:服务端默认的配置(默认是default)。
--multiline, -m – 如果指定,允许多行语句查询(Enter仅代表换行,不代表查询语句完结)。
--multiquery, -n – 如果指定, 允许处理用;号分隔的多个查询,只在非交互模式下生效。
--format, -f – 使用指定的默认格式输出结果。
--vertical, -E – 如果指定,默认情况下使用垂直格式输出结果。这与–format=Vertical相同。在这种格式中,每个值都在单独的行上打印,这种方式对显示宽表很有帮助。
--time, -t – 如果指定,非交互模式下会打印查询执行的时间到stderr中。
--stacktrace – 如果指定,如果出现异常,会打印堆栈跟踪信息。
--config-file – 配置文件的名称。
--secure – 如果指定,将通过安全连接连接到服务器。
--history_file — 存放命令历史的文件的路径。
--param_<name> — 查询参数配置
方式三:使用dbeaver连接使用
1、下载dbeaver社区版
//官网卡死下不下来。。
下载地址:https://www.singdown.com/win/3132/717178313.html
2、点击小插座按钮 -> ClickHouse -> 下一步
注意:第一次连接时,需要下载驱动。(报错提示框----》确定----》下载)
输入主机IP -> 输入端口号 -> 输入账号密码 -> 测试链接 -> 完成