首页 > 其他分享 >Docker部署clickhouse

Docker部署clickhouse

时间:2023-06-21 10:35:20浏览次数:55  
标签:xml 部署 data server -- Docker config clickhouse

Clickhouse特点
完备的DBMS:不仅是个数据库,也是个数据库系统
列存储和数据压缩:典型的olap数据库特性
向量化并行:利用CPU的SIMD(Single INstruction MUltiple Data),单条指令操作多条数据
多线程并行:向量化并行利用硬件采取数据并行(缺陷:不适应较多分支的判断),多线程级并行提高并发
关系模型:有数据库、表、视图和函数。更好清晰的描述实体间的关系
SQL:极高的群众基础
多样化表引擎:合并树、内存、文件、接口等20多种表引擎
多主架构:天然避免单点故障,服务端对客户端都是“孪生兄弟”
分布式:分区、分片

一. 部署

  1. 创建目录
cd /data/clickhouse
mkdir {config,data,log}
  1. 拷贝默认配置文件
docker run -itd --name tmp --ulimit nofile=262144:262144  yandex/clickhouse-server:21.3.14.1-alpine
docker cp tmp:/etc/clickhouse-server/users.xml /data/clickhouse/config/users.xml
docker cp tmp:/etc/clickhouse-server/config.xml /data/clickhouse/config/config.xml
  1. 生成密码
# 这一步如果你不需要密码就跳过,需要操作一下
echo -n 123456 | openssl dgst -sha256
(stdin)= 8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92
  1. 修改users.xml配置
    同理,不需要配置密码的就省略这一步吧。

  2. 运行容器

docker run -itd --name my-clickhouse --ulimit nofile=262144:262144 -p 28123:8123 -p 29000:9000 -p 29009:9009 -v /data/clickhouse/data:/var/lib/clickhouse:rw -v /data/clickhouse/config/config.xml:/etc/clickhouse-server/config.xml -v /data/clickhouse/config/users.xml:/etc/clickhouse-server/users.xml -v /data/clickhouse/log:/var/log/clickhouse-server:rw yandex/clickhouse-server:21.3.14.1-alpine
  1. 测试
# 进入容器
docker exec -it my-clickhouse /bin/bash
# 连接clickhouse
clickhouse-client --password "123456"
# 查看库
show databases;

## 或者在其他其他上通过http接口测试是否能连通
echo 'show databases' | curl 'http://127.0.0.1:28123/?user=default&password=123456' -d @-

## 如果本地可以通,其他主机连不通的话则看一下防火墙是否打开端口了

二. ClickHouse 冷数据恢复的迁移方式
直接拷贝走clickhouse 的数据到另一台机器上,修改下相关配置就可以直接启动了,仔细的观察一下 ClickHouse 在文件系统上的目录结构(配置文件
/ect/clickhouse-server/config.xml 里面配置的 ),为了便于查看,只保留了 data 和 metadata 目录。




基于这个信息,直接把data和metadata目录(要排除 system 库)复制到新集群,即可实现数据迁移

标签:xml,部署,data,server,--,Docker,config,clickhouse
From: https://www.cnblogs.com/hi-lijq/p/17495597.html

相关文章

  • Docker 命令
    Docker命令attach登录到容器直接操作build 构建镜像commit将容器打包成另一个镜像cp   在容器与本地系统间复制文件create创建一个新的容器,不启动diff  查看容器中新增或修改的目录及文件events查看docke......
  • 项目添加https安全验证部署环境生成自签名证书。
    生成证书自签名证书使用javajdk自带的生成SSL证书的工具keytool生成自己的证书1、打开cmd2、输入命令生成证书keytool-genkeypair-aliastomcat_https-keypass123456-keyalgRSA-keysize1024-validity365-keystored:/tomcat_https.keystore-s......
  • 通过 docker-compose 快速部署 DolphinScheduler 保姆级教程
    目录一、概述二、前期准备1)部署docker2)部署docker-compose三、安装MySQL数据库四、安装注册中心Zookeeper五、ApacheDolphinScheduler编排部署1)下载DolphinScheduler安装包2)配置2)安装MySQL驱动3)启动脚本bootstrap.sh4)构建镜像Dockerfile5)编排docker-compose.yaml6)开......
  • Docker镜像
    是什么是一种轻量级、可执行的独立软件包,它包含运行某个软件所需的所有内容,我们把应用程序和配置依赖打包好形成一个可交付的运行环境(包括代码、运行时需要的库、环境变量和配置文件等),这个打包好的运行环境就是image镜像文件。只有通过这个镜像文件才能生成Docker容器实例(类似Ja......
  • Docker --镜像容器学习笔记
    Docker简介准备工作1.前提知识-linux-Git2.课程定位和范围(基于JavaEE方向)-JavaEEjavaSpringMVC/springBoot/mybatis...docker基础篇-DockerGoSwarm/compose/machine/mesos/k8s/---CI/CDjenkinds整合docker高级篇是什么1.问题:为什......
  • Docker 常用命令
    DOCKER常用命令根据镜像创建:sudodockercreate-itimg_name启动容器:sudodockerstartcon_name停止容器:dockerstopcon_name删除容器:dockerrmcon_name改名:dockerrenameold_namenew_name进入容器:sudodockerexec-itcon_namebash退出容器:exit查看运行中的容......
  • Zabbix的详细安装部署,及安装过程中遇到的问题及解决办法。
    Zabbix的详细安装部署1.架构Zabbix由几个主要的功能组件组成,其职责如下所示。SERVERZabbixserver是Zabbixagent向其报告可用性、系统完整性信息和统计信息的核心组件。是存储所有配置信息、统计信息和操作信息的核心存储库。数据库所有配置信息以及Zabbix收集到的数......
  • 使用docker-compose同时启动MySQL和Redis
    环境查看安装docker和docker-composeapt-yinstalldocker.iodocker-compose设置docker-compose配置文件root@iZ2zebcd9hncu1371fetliZ:/data/docker-compose#pwd/data/docker-composeroot@iZ2zebcd9hncu1371fetliZ:/data/docker-compose#catdocker-compose.ymlvers......
  • Docker配置SpringBoot+ShardingJDBC+MybatisPlus项目实现分库分表与读写分离
    Docker配置SpringBoot+ShardingJDBC+MybatisPlus项目实现分库分表与读写分离 分类于 实战例子本文ShardingJDBC相关知识主要参考自ShardingJDBC官方文档,更多的用法建议到官网文档查看。前言传统的业务系统都是将数据集中存储至单一数据节点的解决方案,如今随着互联网数据......
  • k8s1.26.3部署
    1.设置hostnamehostnamectlset-hostnamek8s-master//master节点hostnamectlset-hostnamek8s-node1//node1节点hostnamectlset-hostnamek8s-node2//node2节点2.设置hosts后续可以使用别名直接访问别的节点cat>>/etc/hosts<<EOF192.168.100.40k8s-master192.......