《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. Checkstyle的安装与使用

    两种安装方法: 方法一: 1.Eclipse中,选择Help->Software Updates->Find and Install 2.选择 Search for new feature ...

  2. 通过一段代码理解es6继承;

    class animal{ constructor(props){ this.name = 'xiaoniao' || props.name } eat(){ console.log(this.nam ...

  3. redis从0-1学习记录(完结)

    1. NoSQL(not only sql):不仅仅是数据库,非关系型数据库,关系型数据库是以表格的行列进行存储的,而非关系型数据库是以键值对进行存储,不需要固定的格式.非关系型数据库的特点,方便扩展 ...

  4. ruby 版本管理RVM (ruby version manager)

    macOS. 自带的ruby 版本目录权限比较高, 经常有很多 操作需要权限而不能执行 虽然 macOS 自带了一个 ruby 环境,但是是系统自己使用的,所以权限很小,只有 system. 而/Li ...

  5. 使用JQGrid中可见列并存入Cookie

    引入js与css <link href="~/Content/js/jquery-ui/jquery-ui.min.css" rel="stylesheet&quo ...

  6. Alibaba Java诊断工具Arthas查看Dubbo动态代理类

    原创/朱季谦 阅读Dubbo源码过程中,会发现,Dubbo消费端在做远程调用时,默认通过 Javassist 框架为服务接口生成动态代理类,接着再去调用代理类实现远程接口调用.在阅读这部分源码时,最后 ...

  7. javap命令反编译

    javap命令反编译生成的是程序员可以认识的字节码文件 -help --help -? 输出此用法消息 -version 版本信息,其实是当前javap所在jdk的版本信息,不是class在哪个jdk ...

  8. 安卓记账本开发学习day4

    在代码层面,展示出来的界面应该如下图 但是实际运行效果如下图 很明显,"其他"都没有显示出来,经过一点点排查,发现是IncomeFragment.java文件的代码存在错误 @Nu ...

  9. Caused by: com.sonatype.nexus.staging.client.StagingRuleFailuresException: Staging rules failure! 已解决!

    问题分析 由于项目中修改了一些代码,然后没有修改版本号,直接deploy代码到仓库,最终导致错误! 根据 https://central.sonatype.org/faq/can-i-change-a ...

  10. AspNetCore配置多环境log4net配置文件

    前言 在之前的文章中有讲到AspNetCore多环境配置文件的应用,我们根据自己多种环境分别配置多个appsettings.$EnvironmentName.json文件. 在实际的开发中我们可能会遇 ...