准备工作
1.关防火墙
2.CentOS 取消打开文件数限制
(1)在 hadoop102 的 /etc/security/limits.conf 文件的末尾加入以下内容
(因为clickhouse很吃cpu,数据量大,查询线程一多,对于打开的文件数、进程数会不够用)
vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072
(2)在 hadoop102 的/etc/security/limits.d/20-nproc.conf 文件的末尾加入以下内容(因为此文件的配置会覆盖limits.conf)
vim /etc/security/limits.d/20-nproc.conf
* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072
把当前用户退出重新登陆即可(应该不用重启)。
使用如下命令看是否生效:
ulimit -a
(3)执行同步操作
其他两台服务器hadoop103、hadoop104 上也进行相同配置。
3.安装依赖
yum install -y libtool
yum install -y *unixODBC*
在 hadoop103、hadoop104 上执行以上操作
4.取消SELINUX
(1)修改/etc/selinux/config 中的 SELINUX=disabled
vim /etc/selinux/config
SELINUX=disabled
注意:别拼错了
(2)执行同步操作
其他两台服务器hadoop103、hadoop104 上也进行相同配置
(3)重启三台服务器后生效
临时生效可以使用:
setenforce 0
之后检查状态:
getenforce
单机安装
1.下载
官网:https://clickhouse.tech/
下载界面:https://clickhouse.com/docs/en/install#available-installation-options
![](https://img.haomeiwen.com/i17103210/3de45da773629129.png)
然后点击手动下载包,或直接访问下载地址
![](https://img.haomeiwen.com/i17103210/b899f421d75d13ad.png)
此处以rpm包为例,我们选rpm/,然后选stable/
上一篇笔记用的二进制包,可参考21.9.4.35版本安装笔记,本次用的21.7.11.3,2022年9月更新的。
我们需要四个包:
- client
clickhouse-client-21.7.11.3-2.noarch.rpm - common-static-dbg
clickhouse-common-static-21.7.11.3-2.x86_64.rpm - common-static
clickhouse-common-static-dbg-21.7.11.3-2.x86_64.rpm - server
clickhouse-server-21.7.11.3-2.noarch.rpm
重要版本说明:
20.5开始支持多线程
20.6.3开始支持explain查看执行计划
20.8之后出了新的引擎可实时同步MySQL,类比maxwell、canal...
2.创建目录
在 hadoop102 的/opt/software 下创建 clickhouse 目录
cd /opt/software/
mkdir clickhouse
将4 个文件上传到 hadoop102 的software/clickhouse 目录下
将安装文件同步到 hadoop103、hadoop104(后续安装集群用)
3.rpm安装
分别在三台机子上安装这 4 个 rpm 文件
rpm -ivh *.rpm
安装server时会让输入default用户的密码,直接回车就是空密码。
查看安装情况
sudo rpm -qa|grep clickhouse
与二进制包不同的是,rpm安装后文件会存放在默认目录下:
bin/在/usr/bin/下
conf/在/etc/clickhouse-server/和/etc/clickhouse-client/下
lib在/var/lib/clickhouse/下 (可改)
log/在/var/log/clickhouse/下 (可改)
与二进制包安装脚本类似,clickhouse的rpm安装过程中也会自动创建一个clickhouse用户,如果不是root用户进行操作的话,需要注意一下用户权限的问题。
4.修改配置文件
有两个配置文件,config.xml和users.xml,两个都是重要的配置文件。
部署集群需要配config.xml,调一些参数要配users.xml。
vim /etc/clickhouse-server/config.xml
把 <listen_host>::</listen_host> 的注释打开,
这样的话才能让 ClickHouse 被除本机以外的服务器访问。
在这个文件中,有 ClickHouse 的一些默认路径配置,比较重要的:
数据文件路径:<path>/var/lib/clickhouse/</path>
日志文件路径:<log>/var/log/clickhouse-server/clickhouse-server.log</log>
5.启动 Server
systemctl start clickhouse-server
检查状态:
sudo clickhouse status
#此为官方命令,clickhouse start,clickhouse stop,clickhouse restart
systemctl status clickhouse-server
三台机器上关闭开机自启
systemctl disable clickhouse-server
6.使用 client 连接 server
端口默认是9000(看一下需不需要改,因为9000端口比较常见)
默认登陆用户是default,某些权限可能不足
clickhouse-client -m
clickhouse-client -m -h hostname
clickhouse-client --query "查询语句"
-m :可以在命令窗口输入多行命令,以分号为标识作为语句结束,否则回车即执行,无法换行。
检查数据库:
show databases;
默认有default和system两个库。
到/etc/clickhouse-server 目录下更改user.xml文件,将<access_management>1</access_management>的注释去掉。
使用default用户进行登录,创建一个administrator用户并赋予所有权限
create user 'wenjie.wang' identified with sha256_password by '123456' host any;
GRANT ALL ON *.* TO 'wenjie.wang' WITH GRANT OPTION;
如果grant不成功则使用show grants for default;打印出default所有的权限,再替换语句中的ALL,或者复制报错code497中的grant至with grant option也可
网友评论