image.png
先决条件
- 一台CentOS 7服务器,
- 拥有sudo权限的非root用户,如:clickhouse
- 关防火墙
$more /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
$useradd -m clickhouse
$passwd clickhouse
$
分配sudo 权限给 clickhouse
$chmod u+w /etc/sudoers
$vim /etc/sudoers
# 找到这一 行:"root ALL=(ALL) ALL"在起下面添加"
clickhouse ALL=(ALL) ALL"
#撤销文件的写权限: chmod u-w /etc/sudoers
$
$systemctl stop firewalld.service #停止firewall
$systemctl disable firewalld.service #禁止firewall开机启动
$
$su - clickhouse
# 或ssh 登录
1.单节点安装
sudo yum install yum-utils
sudo rpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPG
sudo yum-config-manager --add-repo https://repo.clickhouse.tech/rpm/clickhouse.repo
sudo yum install clickhouse-server clickhouse-client
Server config files: /etc/clickhouse-server/
库数据位置:/var/lib/clickhouse/
日志目录:/var/log/clickhouse-server/
您已成功安装ClickHouse服务器和客户端。
2.配置
打开监听地址
vi /etc/clickhouse-server/config.xml
146 <listen_host>0.0.0.0</listen_host>
3.启动与停止
sudo -u clickhouse clickhouse-server --config-file=/etc/clickhouse-server/config.xml
以服务方式启动
sudo systemctl start clickhouse-server
sudo systemctl stop clickhouse-server
sudo systemctl status clickhouse-server
我的服务日志如下:
$sudo systemctl status clickhouse-server
[0m clickhouse-server.service - ClickHouse Server (analytic DBMS for big data)
Loaded: loaded (/etc/systemd/system/clickhouse-server.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2021-01-31 19:04:53 CST; 3min 20s ago
Main PID: 26618 (clckhouse-watch)
CGroup: /system.slice/clickhouse-server.service
618 clickhouse-watchdog --config=/etc/clickhouse-server/config.xml --pid-file=/run/clickhouse-server/clickhouse-server.pid
625 /usr/bin/clickhouse-server --config=/etc/clickhouse-server/config.xml --pid-file=/run/clickhouse-server/clickhouse-server.pid
Jan 31 19:04:53 vm16126 systemd[1]: Started ClickHouse Server (analytic DBMS for big data).
Jan 31 19:04:53 vm16126 clickhouse-server[26618]: Processing configuration file '/etc/clickhouse-server/config.xml'.
Jan 31 19:04:53 vm16126 clickhouse-server[26618]: Logging trace to /var/log/clickhouse-server/clickhouse-server.log
Jan 31 19:04:53 vm16126 clickhouse-server[26618]: Logging errors to /var/log/clickhouse-server/clickhouse-server.err.log
Jan 31 19:04:54 vm16126 clickhouse-server[26618]: Processing configuration file '/etc/clickhouse-server/users.xml'.
Jan 31 19:04:54 vm16126 clickhouse-server[26618]: Merging configuration file '/etc/clickhouse-server/users.d/dba.xml'.
Jan 31 19:04:54 vm16126 clickhouse-server[26618]: Saved preprocessed configuration to '/var/lib/clickhouse/preprocessed_configs/users.xml'.
Jan 31 19:04:56 vm16126 clickhouse-server[26618]: Processing configuration file '/etc/clickhouse-server/config.xml'.
Jan 31 19:04:56 vm16126 clickhouse-server[26618]: Saved preprocessed configuration to '/var/lib/clickhouse/preprocessed_configs/config.xml'.
[clickhouse@vm16126 ~]$
4.验证是否启动正常
4.1 查看日志
$tail -f /var/log/clickhouse-server/clickhouse-server.log
4.2 查看进程
[root@vm16127 ~]$netstat -ano | grep 9000
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN off (0.00/0/0)
[root@vm16127 ~]$
[root@vm16127 ~]$ps -ef | grep clickhouse
root 7013 6871 0 16:39 pts/0 00:00:00 sudo -u clickhouse clickhouse-server --config-file=/etc/clickhouse-server/config.xml
clickho+ 7014 7013 1 16:39 pts/0 00:00:24 clickhouse-server --config-file=/etc/clickhouse-server/config.xml
您已成功启动ClickHouse服务器,现在可以使用clickhouse-client, CLI程序连接到服务器。
5.客户端连接
[root@vm16127 ~]$clickhouse-client -m
ClickHouse client version 21.1.2.15 (official build).
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 21.1.2 revision 54443.
vm16127 :)
或远程连接( 10.106.161.26 连到 10.106.161.27server)
[root@vm16126 ~]$clickhouse-client -m -h 10.106.161.27 --port 9000
ClickHouse client version 21.1.2.15 (official build).
Connecting to 10.106.161.27:9000 as user default.
Connected to ClickHouse server version 21.1.2 revision 54443.
5.1 建库
vm16127 :) CREATE DATABASE test;
CREATE DATABASE test
Query id: 54075d46-35c9-4996-90b1-40872d89c182
Ok.
0 rows in set. Elapsed: 0.058 sec.
vm16127 :) use test;
5.2 创建表
vm16127 :) CREATE TABLE visits (
:-] id UInt64,
:-] duration Float64,
:-] url String,
:-] created DateTime
:-] ) ENGINE = MergeTree()
:-] PRIMARY KEY id
:-] ORDER BY id;
CREATE TABLE visits
(
`id` UInt64,
`duration` Float64,
`url` String,
`created` DateTime
)
ENGINE = MergeTree
PRIMARY KEY id
ORDER BY id
Query id: 872ce7d2-8de6-4223-b59e-4d863817e261
Ok.
0 rows in set. Elapsed: 0.034 sec.
vm16127 :)
5.3 查询
vm16127 :) select * from visits;
SELECT *
FROM visits
Query id: 368d7519-376a-408a-9272-9f933acb4571
Ok.
0 rows in set. Elapsed: 0.013 sec.
vm16127 :)
6. Trouble shooting
监听地址没有配置导致以下错误而无法启动。
解决办法:见“配置”部分
2021.01.31 18:39:57.106789 [ 24011 ] {} <Debug> Application: Shut down storages.
2021.01.31 18:39:57.106950 [ 24011 ] {} <Debug> Application: Destroyed global context.
2021.01.31 18:39:57.107945 [ 24011 ] {} <Error> Application: DB::Exception: Listen [::]:8123 failed: Poco::Exception. Code: 1000, e.code() = 0, e.displayText() = DNS error: EAI: Address family for hostname not supported (version 21.1.2.15 (official build))
2021.01.31 18:39:57.107988 [ 24011 ] {} <Information> Application: shutting down













网友评论