操作系统:Centos-7.7
ClickHouse: YUM在线安装,20.x
在/etc/security/limits.conf这个文件的末尾加入以下内容:
sudo vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072
在/etc/security/limits.d/90-nproc.conf这个文件的末尾加入以下内容:
sudo vim /etc/security/limits.d/90-nproc.conf
* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072
重启服务器之后生效,用ulimit -n 或者ulimit -a 查看设置结果
ulimit -n
ulimit -a
修改 /etc/selinux/config 中的SELINUX=disabled后重启
vim /etc/selinux/config
SELINUX=disabled
Centos-6 操作:
service iptables stop
service ip6tables stop
Centos-7 操作:
systemctl status firewalld.service
systemctl stop firewalld.service
yum install -y libtool
yum install -y *unixODBC*
具体安装细节看:https://clickhouse.tech/#quick-start
查询是否安装 clickhouse:
rpm -qa|grep clickhouse
卸载clickhouse:
rpm -e clickhouse-client-20.5.4.40-2.noarch --nodeps
rpm -e clickhouse-server-20.5.4.40-2.noarch --nodeps
rpm -e clickhouse-common-static-20.5.4.40-2.x86_64 --nodeps
删除数据目录:
rm -rf /var/lib/clickhouse
删除集群配置文件:
rm -rf /etc/metrika.xml
删除配置文件:
rm -rf /etc/clickhouse-*
删除日志文件:
rm -rf /var/log/clickhouse-server
删除zookeeper上clickhouse 的数据:
rmr /clickhouse
也可以进行全局寻找:然后执行删除操作
find / -name 'clickhouse'
ClickHouse的安装可以使用yum在线安装,也可以使用rpm离线安装的方式!
具体信息见官网文档:https://clickhouse.tech/#quick-start
需要验证当前服务器的CPU是否支持SSE 4.2指令集,因为向量化执行需要用到这项特性:
grep -q sse4_2 /proc/cpuinfo && echo "SSE 4.2 supported" || echo "SSE 4.2 no supported"
依次执行如下命令:
yum install yum-utils -y rpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPG yum-config-manager --add-repo https://repo.clickhouse.tech/rpm/clickhouse.repo yum install clickhouse-server clickhouse-client -y
如果您没法链接互联网,则也可以使用rpm的方式来进行离线安装:需要下载的安装包有:
clickhouse-server-20.5.4.40-2.noarch.rpm
clickhouse-common-static-20.5.4.40-2.x86_64.rpm
clickhouse-client-20.5.4.40-2.noarch.rpm
下载地址在:https://repo.yandex.ru/clickhouse/rpm/stable/x86_64/https://packagecloud.io/Altinity/clickhouse
前台启动
clickhouse-server --conf-file=/etc/clickhouse-server/config.xml
后台启动
nohup clickhouse-server --config-file=/etc/clickhouse-server/config.xml 1>~/logs/clickhouse_std.log 2>~/logs/clickhouse_err.log &
启动成功,检查一下
ps -aux|grep clickhouse
netstat -nltp |grep clickhouse
如果报错
解决方案:修改安装目录的权限!,默认使用clickhouse用户!命令为:
cd /var/lib/
chown -R root:root clickhouse
默认情况下:/var/lib/clickhouse的group 和owner是:clickhouse:clickhouse
两种解决方式:
1、如果坚持使用root用户启动:把/var/lib/clickhouse 改成:root:root
2、你使用clickhouse用户去启动:chmod -u /bin/bash clickhouse su - clickhouse 切换用户之后在启动
具体命令:
clickhouse-client
或者
TZ=Asia/Shanghai clickhouse-client
启动情况如下:
创建库:
create database dylandb;
切换库:
use dylandb;
创建表:
create table dylan_test01(id Int8,name String) engine = TinyLog;
查询所有表:
show tables;
插入数据:
insert into dylan_test01 values (1,'dylan'),(2,'clickhouse'),(3,'spark');
查询数据:
select id,name from dylan_test01;
统计查询:
select count(*) as total from dylan_test01;
退出客户端:
quit
vim /etc/clickhouse-server/config.xml
先修改tcp_port为9977,因为这个端口和HDFS的冲突了
<tcp_port>9977</tpc_port>
listen_host 表示能监听的主机,表示任意主机都可以访问
<listen_host>::</listen_host>
<!-- <listen_host>::1</listen_host> -->
<!-- <listen_host>127.0.0.1</listen_host> -->
所有节点同步:
scp -r /etc/clickhouse-server/config.xml bigdata02:/etc/clickhouse-server/
scp -r /etc/clickhouse-server/config.xml bigdata03:/etc/clickhouse-server/
scp -r /etc/clickhouse-server/config.xml bigdata04:/etc/clickhouse-server/
scp -r /etc/clickhouse-server/config.xml bigdata05:/etc/clickhouse-server/
vim /etc/metrika.xml
<yandex>
<clickhouse_remote_servers>
<!-- 4分片1副本 -->
<d_clickhouse_4shards_1replicas>
<shard>
<!-- 数据自动同步 -->
<internal_replication>true</internal_replication>
<replica>
<host>bigdata02</host>
<port>9977</port>
</replica>
</shard>
<shard>
<replica>
<internal_replication>true</internal_replication>
<host>bigdata03</host>
<port>9977</port>
</replica>
</shard>
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>bigdata04</host>
<port>9977</port>
</replica>
</shard>
<shard>
<internal_replication>true</internal_replication>
<replica>
<host>bigdata05</host>
<port>9977</port>
</replica>
</shard>
</d_clickhouse_4shards_1replicas>
</clickhouse_remote_servers>
<!-- zookeeper 自动同步 --> <zookeeper-servers>
<node index="2">
<host>bigdata02</host>
<port>2181</port>
</node>
<node index="3">
<host>bigdata03</host>
<port>2181</port>
</node>
<node index="4">
<host>bigdata04</host>
<port>2181</port>
</node>
</zookeeper-servers>
<!-- 配置文件中macros若省略,则建复制表时每个分片需指定zookeeper路径及副本名称,同一分片 上路径相同,副本名称不同;若不省略需每个分片不同配置 -->
<macros>
<replica>bigdata02</replica>
</macros>
<networks>
<ip>::/0</ip>
</networks>
<!-- 配置压缩 --> <clickhouse_compression>
<case>
<min_part_size>10000000000</min_part_size>
需要根据不同的机器做不同的修改。
所有节点同步:
1.6.4. 启动 切记:要先启动 zookeeper
启动服务端:
检查启动是否OK:
启动客户端:
参数解释:
启动本地多行查询客户端:
scp -r /etc/metrika.xml bigdata02:/etc/
scp -r /etc/metrika.xml bigdata03:/etc/
scp -r /etc/metrika.xml bigdata04:/etc/
scp -r /etc/metrika.xml bigdata05:/etc/
zkServer.sh start
nohup clickhouse-server --config-file=/etc/clickhouse-server/config.xml
1>~/logs/clickhouse_std.log 2>~/logs/clickhouse_err.log &
netstat -nltp | grep clickhouse
clickhouse-client --host=... --port=... --user=... --password=... -m
username:用户名 password:密码 ip:服务器IP port:端口 -m:允许多行查询
clickhouse-client --host=localhost --port=9977 -m
clickhouse-client --host=bigdata02 --port=9977 --user=bigdata --password=bigdata
-m
<min_part_size_ratio>0.01</min_part_size_ratio>
<method>lz4</method>
</case>
</clickhouse_compression>
</yandex>
切记:要先启动zookeeper
zkServer.sh start
启动服务端:
nohup clickhouse-server --config-file=/etc/clickhouse-server/config.xml
1>~/logs/clickhouse_std.log 2>~/logs/clickhouse_err.log &
检查启动是否OK:
netstat -nltp | grep clickhouse
启动客户端:
clickhouse-client --host=... --port=... --user=... --password=... -m
参数解释:
username:用户名 password:密码 ip:服务器IP port:端口 -m:允许多行查询
启动本地多行查询客户端:
clickhouse-client --host=localhost --port=9977 -m
clickhouse-client --host=bigdata02 --port=9977 --user=bigdata --password=bigdata -m
ps -aux |grep clickhouse
<br>参数<br> | <br>描述<br> |
---|---|
<br>--host, -h<br> | <br>目标服务器名,默认为localhost<br> |
<br>--port<br> | <br>目标端口,默认为9000<br> |
<br>--user, -u<br> | <br>连接用户,默认为default<br> |
<br>--password<br> | <br>连接用户密码,默认为空字符串<br> |
<br>--query, -q<br> | <br>非交互模式下执行的命令<br> |
<br>--database, -d<br> | <br>当前操作的数据库,默认选择配置文件配置的值(默认为default库)<br> |
<br>--multiline, -m<br> | <br>如果设定,允许多行查询<br> |
<br>--multiquery, -n<br> | <br>如果指定,允许处理由分号分隔的多个查询。只有在非交互式模式工作。<br> |
<br>--format, -f<br> | <br>使用指定的默认格式输出结果<br> |
<br>--vertical, -E<br> | <br>如果指定,默认使用垂直格式输出结果,等同于--format=Vertical。<br><br>在这种格式中,每个值可在单独的行上,显示宽表时很有用。<br> |
<br>--time, -t<br> | <br>如果指定,在stderr中输出查询执行时间的非交互式模式下。<br> |
<br>--stacktrace<br> | <br>如果指定,如果发生异常,也会输出堆栈跟踪。<br> |
<br>--config-file<br> | <br>配置文件的名称,额外的设置或改变了上面列出的设置默认值。<br> |
默认情况下,配置文件的搜索顺序如下:
./clickhouse-client.xml
~/.clickhouse-client/config.xml
/etc/clickhouse-client/config.xml
进入到配置文件目录,修改配置配置文件:
vim /etc/clickhouse-server/users.xml
系统默认使用default用户登录无密码。现在我们配置用户bigdata密码为bigdata配置一个用户:你配置的bigdata就是用户名,<password>这个标签中的值,就是密码
<bigdata>
<password>bigdata</password>
<networks incl="networks" replace="replace">
<ip>::/0</ip>
</networks>
<profile>default</profile>
<quota>default</quota>
</bigdata>
所有节点同步:
scp -r /etc/clickhouse-server/users.xml bigdata02:/etc/clickhouse-server/
scp -r /etc/clickhouse-server/users.xml bigdata03:/etc/clickhouse-server/
scp -r /etc/clickhouse-server/users.xml bigdata04:/etc/clickhouse-server/
scp -r /etc/clickhouse-server/users.xml bigdata05:/etc/clickhouse-server/
启动客户端连接:
clickhouse-client --host=bigdata02 --port=9977 --user=bigdata --password=bigdata -m
配置文件路径:
/etc/clickhouse-server/config.xml
/etc/clickhouse-server/users.xml
日志文件路径:
/var/log/clickhouse-server/
表信息路径、元数据存储目录:
/var/lib/clickhouse/metadata/
表数据路径:
/var/lib/clickhouse/data/
clickhouse 既是单独运行的。游离于集群之外。被包含在集群之类的!
表:单机的表,和 分布式的表
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/qq_34635236/article/details/111065856
内容来源于网络,如有侵权,请联系作者删除!