《clickhouse专栏》第三节内容,先安装一个单机版的clickhouse,是后续学习多副本或者分布式集群安装的基础内容。但基本的clickhouse是不依赖于zookeeper的,只有涉及到集群部署的clickhouse才会使用到zookeeper。

一、准备工作

准备工作的部分可能存在不同的linux操作系统发行版,使用的操作命令不一致,但基本上大同小异,大家根据自己的操作系统调整(我使用的是CentOS linux)。

  1. 在主机防火墙开放clickhouse需要使用的端口(默认为9000),或者关闭防火墙。
firewall-cmd --zone=public --add-port=9000/tcp --permanent
firewall-cmd --reload
  1. CentOS 有文件打开数量的限制,通常需要按照大数据通用做法,将文件打开数配置变大

    /etc/security/limits.conf 文件的末尾加入以下内容(如果已经存在就修改)
soft nofile 65536
hard nofile 65536
soft nproc 131072
hard nproc 131072
  1. 安装依赖
yum install -y libtool;
yum install -y *unixODBC*;
  1. CentOS 取消 SELINUX

    修改/etc/selinux/config 中的 SELINUX=disabled 。修改这个配置需要重启,临时生效命令setenforce 0 查询状态命令getenforce

二、安装包下载、安装

官网推荐的是使用shell脚本的方式,或者yum 、apt-get的方式来安装。但是这种安装方式需要连接互联网,在很多情况下我们的安装环境没有互联网,或者使用的linux发行版并不一致,导致操作命令不一致。所以通过rpm安装包的方式进行安装就更通用一些。

安装包可以通过这个连接进行下载:https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/,安装包的版本号要一致。如:

  • clickhouse-client-21.7.9.7-2.noarch.rpm
  • clickhouse-common-static-21.7.9.7-2.x86_64.rpm
  • clickhouse-server-21.7.9.7-2.noarch.rpm

规划clickhouse集群的主机,将上面的安装包放入集群统一的规划目录下面。如:/root/clickhouse。然后在集群内每一台主机上该目录下执行命令,则可进行离线安装。

rpm -ivh *.rpm;

安装过程会提示输入默认用户密码,输入即可,并记住你的密码 。通过命令rpm -qa|grep clickhouse检查安装结果,结果如下表示安装成功。

clickhouse-common-static-21.7.9.7-2.x86_64
clickhouse-client-21.7.9.7-2.noarch
clickhouse-server-21.7.9.7-2.noarch

rpm安装之后,默认的相关目录为(在安装过程中,会默认新建用户clickhouse,如果你不打算使用默认目录,下文中会提供修改方式。需要注意的是:如果你新建自定义目录,要保证clickhouse用户的读写权限):

  • ck脚本目录:/usr/bin/
  • ck配置目录:/etc/clickhouse-server/
    • /etc/clickhouse-server/config.xml clickhouse的核心配置文件
  • ck的数据目录:/var/lib/clickhouse-server
  • ck的日志目录:/var/log/clickhouse-server

三、基础配置修改

先通过如下的命令增加配置文件的可修改权限,默认是只读权限。

chmod u+w /etc/clickhouse-server/config.xml
  • 修改 /etc/clickhouse-server/config.xml。把 listen_host配置的:: 的XML注释打开,这样的话才能让 ClickHouse 被除本 机以外的服务器访问

  • 日志配置也在/etc/clickhouse-server/config.xml这个文件中,可以修改日志级别和相关存储目录

  • 生产环境下,通常默认的数据存储目录需要修改为独立挂载的磁盘目录

  • 修改时区,找到timezone标签,将内容修改为Asia/Shanghai
<timezone>Asia/Shanghai</timezone>

四、单机启动及登录验证

  • 启动命令:clickhouse start
  • 停止命令: clickhouse stop
  • 查看clickhouse当前主机节点的状态:systemctl status clickhouse-server
  • 客户端连接命令:clickhouse-client -m ,有设置密码的话使用clickhouse-client -m --password Abcd1234
  • 直接执行命令clickhouse-client --password Abcd1234 --query "show databases;"
  • 在安装了clickhouse client的服务器上远程访问:clickhouse-client -h 192.168.132.14 --port 9000 -u default --password abcd1234

推荐阅读

限于博文篇幅,更多精彩内容我就不一一列举了,推荐阅读

《原创精品视频及配套文档:springboot-已录制97节(免费)》

等等等等

【clickhouse专栏】单机版的安装与验证的更多相关文章

  1. Linux系统下Redis单机版的安装详细教程

    Linux系统下Redis单机版的安装详细教程 1.下载软件安装包并上传到root目录 这里以旧版本的3.0进行安装,比较成熟稳定,具体软件可以通过qq群534073451文件下载

  2. Linux下zookeeper单机版详细安装

    Linux下zookeeper单机版详细安装 1.zookeeper简介 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop ...

  3. Python下载安装及验证

      目录: 一.Python介绍 二.python安装及验证 一.Python介绍 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个 ...

  4. 安装、验证安装 Oracle Database XE 11gR2

    操作系统:Windows 10 x64 第一节:下载 Oracle Database XE 11gR2 第二节:安装.验证安装 Oracle Database XE 11gR2 第三节:Oracle ...

  5. 【clickhouse专栏】数据库、数据仓库之间的区别与联系

    从本篇文章开始,笔者打算写一个系列的<clickhouse专栏>,其全称是Click Stream,Data WareHouse,简称ClickHouse.从其全称中的"Data ...

  6. 【clickhouse专栏】clickhouse性能为何如此卓越

    在<clickhouse专栏>上一篇文章中<数据库.数据仓库之间的区别与联系>,我们介绍了什么是数据库,什么是数据仓库,二者的区别联系.clickhouse的定位是" ...

  7. 【clickhouse专栏】基础数据类型说明

    本文是clickhouse专栏第五篇,更多内容请关注本号历史文章! 一.数据类型表 clickhouse内置了很多的column数据类型,可以通过查询system.data_type_families ...

  8. 【clickhouse专栏】对标mongodb存储类JSON数据文档统计分析

    一.文档存储的需求 很多的开发者都使用过mongodb,在mongodb中数据记录是以文档的形式存在的(类似于一种多级嵌套SQL的形式).比如下面的JSON数据结构:dev_ip表示某一台服务器的ip ...

  9. ant安装和验证

    1.下载apache-ant-1.9.6 2.D:\software\apache-ant-1.9.6 3.配置环境变量 在系统变量path的最后面添加D:\software\apache-ant-1 ...

随机推荐

  1. Android打开数据库读取数据

    打开数据库读取数据 private MyDatabaseHelper dbHelper; dbHelper=new MyDatabaseHelper(this,"List.db", ...

  2. 解决vscode开发react项目没有html标签自动补全

    怎么设置自动补全: 左下角齿轮按钮--设置-- 在搜索框中输入Include Languages,选择Emmet,并在Emmet:include language下点击在setting.json中编辑 ...

  3. RFC 标准文档

    RFC 标准文档 什么是 RFC ? RFC(Request For Comments)意即"请求评论",包含了关于Internet的几乎所有重要的文字资料.如果你想成为网络方面的 ...

  4. C# 利用.NET 升级助手将.NET Framework项目升级为.NET 6

    ​概述 .NET6 正式版本已经发布有一阵子了,今天我就体验一下如何将.NET Framework的项目升级为.NET 6. 升级条件: Windows 操作系统 .NET 6 SDK Visual ...

  5. uniapp-uni.setNavigationBarColor 动态修改顶部背景颜色

    uni.setNavigationBarColor({ frontColor: '#ffffff', backgroundColor: "#3583ff" })

  6. Linux中权限对于文件和目录的区别

    Linux系统中的权限对于文件和目录来说,是有一定区别的 下面先列举下普通文件对应的权限 1)可读r:表示具有读取.浏览文件内容的权限,例如,可以对文件执行 cat.more.less.head.ta ...

  7. Blazor 修改错误提示

    我们在blazor中,如果代码有异常,会产生如下的错误 在群里很多朋友都问,这个错误提示是英文的,能不能改成中文? 这个当然是可以的. 其实这个错误描述是在项目里自己定义的,具体内容可以看_Layou ...

  8. 2021.11.30 eleveni的水省选题的记录

    2021.11.30 eleveni的水省选题的记录 因为eleveni比较菜,eleveni决定先刷图论,再刷数据结构,同时每天都要刷dp.当然,对于擅长的图论,eleveni决定从蓝题开始刷.当然 ...

  9. k8s入门之pod(四)

    pod是k8s项目中的最小编排单位,它是运行中的一组(一个或多个)容器,这些容器共享存储.网络.调度等资源,pod是一个逻辑概念,同一个名称空间下不同pod可以通过ip互相访问. 一.通过命令行方式管 ...

  10. vue项目中的去抖与节流

    节流 // fn是我们需要包装的事件回调, interval是时间间隔的阈值 function throttle(fn, interval) { let last = 0; // last为上一次触发 ...