ClickHouse安装

一、Docker安装

  0. 不本地安装的体验平台:https://play.clickhouse.com/play?user=play;

  1. docker-compose配置文件

version: "3"
networks:
    rhxy-network:
        external: true
services:
    clickhouse:
        image: clickhouse/clickhouse-server:23.12.2.59-alpine
        container_name: clickhouse
        hostname: clickhouse
        restart: on-failure
        ports:
          - "18123:8123"
          - "19000:9000"
        networks:
            - rhxy-network
        volumes:
            - /data/test/clickhouse/data:/var/lib/clickhouse
            - /data/test/clickhouse/log/:/var/log/clickhouse-server/
        #    - /data/test/clickhouse/etc/:/etc/clickhouse-server/
            - /data/test/clickhouse/initdb/:/docker-entrypoint-initdb.d/
        environment:
            TZ: Asia/Shanghai
            CLICKHOUSE_USER: root
            CLICKHOUSE_PASSWORD: 123456@rhxy
        ulimits:
            nofile:
                soft: 262144
                hard: 262144

  2. 端口介绍

    A. 8123(HTTP)端口:用于通过HTTP协议与该数据库进行交互,支持RESTful API和HTTP查询语法,通常用在执行查询、获取数据和管理CK集群;

    B. 9000(TCP)端口:用于通过TCP/IP协议与该数据库进行交互,使用自定义二进制协议进行通信,支持更高的并发性和高性能,通常用于大规模数据导入、导出和数据处理等高性能场景。

  3. 核心文件

    A. /etc/clickhouse-server:服务端的配置文件目录,包括全局配置config.xml和用户配置users.xml等,小技巧是这两个文件可以从容器内拷贝出来再修改映射

      config.d/docker_related_config.xml:放开logger的注释可将日志输入到标准流上,即docker logs 容器ID可以查看日志

    B. /var/lib/clickhouse:默认的数据存储目录;

    C. /var/log/clickhouse-server:默认保存日志的目录;

    D. /docker-entrypoint-initdb.d:数据库初始化脚本目录。

  4. 数据导入

    A. 本地SQL文件导入:insert into rhxy_log from infile '/var/log/clickhouse-server/rhxy_log.sql' FORMAT MySQLDump,注意DDL语句将会跳过。

  5. 其它

    A. 修改密码:users.xml中

    B. clickhouse-client:命令使用。

 

二、SpringBoot整合

  1. 报错

    A. 报错一:clickhouse-jdbc连接数据库报错:LZ4 is not supported;

     解决方式:引入lz4-java 1.8.0版本依赖

    B. 错误一:ava.lang.NoClassDefFoundError:org/apache/hc/client5/http/config/ConnectionConfig

     解决方式:升级httpclient5到5.2.3版本;

  2. Maven整合

<dependency>
    <groupId>com.clickhouse</groupId>
    <artifactId>clickhouse-jdbc</artifactId>
    <version>0.5.0</version>
</dependency>

 

posted @ 2024-01-22 21:32  如幻行云  阅读(50)  评论(0编辑  收藏  举报