以下是 ClickHouse 快速安装与体验的详细指南,帮助你从零开始在本地或服务器上快速部署并运行 ClickHouse,进行基础操作体验。整个过程简单、高效,适合开发、测试和学习使用。
🚀 一、环境准备
- 操作系统:推荐 Linux(Ubuntu/CentOS),也支持 macOS 和 Docker
- 内存:至少 2GB(建议 4GB+)
- 磁盘:至少 5GB 可用空间
- 用户权限:具备
sudo权限(或 root)
💡 本文以 Ubuntu 20.04/22.04 为例,其他系统类似。
📦 二、快速安装 ClickHouse(Ubuntu/Debian)
方法一:官方 APT 安装(推荐,最简单)
# 1. 添加 GPG 密钥
sudo apt-get install -y apt-transport-https ca-certificates dirmngr
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 8919F6BD2B48D754
# 2. 添加 ClickHouse 官方仓库
echo "deb https://packages.clickhouse.com/deb stable main" | sudo tee /etc/apt/sources.list.d/clickhouse.list
# 3. 更新软件包列表
sudo apt-get update
# 4. 安装 ClickHouse 服务
sudo apt-get install -y clickhouse-server clickhouse-client
✅ 安装完成后:
clickhouse-server:数据库服务clickhouse-client:命令行客户端
🔧 三、启动服务
# 启动 ClickHouse 服务
sudo service clickhouse-server start
# (可选)设置开机自启
sudo systemctl enable clickhouse-server
# 检查服务状态
sudo service clickhouse-server status
⏳ 首次启动可能需要几十秒,请耐心等待。
💬 四、连接客户端
clickhouse-client
你将看到类似以下提示:
ClickHouse client version 23.3.8.21.
Connecting to localhost:9000 as user default.
Connected to ClickHouse server version 23.3.8.
恭喜!你已经成功进入 ClickHouse 命令行!
🧪 五、快速体验:创建表、插入数据、查询
我们来做一个简单的日志分析示例。
1. 创建数据库(可选,默认有 default)
CREATE DATABASE IF NOT EXISTS test;
USE test;
2. 创建一张日志表(使用 MergeTree 引擎)
CREATE TABLE user_log (
user_id UInt32,
event_date Date,
action String,
duration UInt32
) ENGINE = MergeTree()
ORDER BY (event_date, user_id);
🔍 说明:
MergeTree是最常用的表引擎,支持高效插入和范围查询。ORDER BY定义了数据排序规则,用于稀疏索引。
3. 插入几条测试数据
INSERT INTO user_log VALUES
(1001, '2024-04-01', 'login', 30),
(1002, '2024-04-01', 'click', 15),
(1001, '2024-04-02', 'view', 45),
(1003, '2024-04-02', 'login', 20);
⚠️ 注意:ClickHouse 更适合批量插入,单条插入仅用于测试。
4. 查询数据
-- 查看所有数据
SELECT * FROM user_log;
-- 按日期统计行为次数
SELECT
event_date,
action,
COUNT(*) AS cnt,
AVG(duration) AS avg_duration
FROM user_log
GROUP BY event_date, action
ORDER BY event_date;
输出示例:
2024-04-01 login 1 30
2024-04-01 click 1 15
2024-04-02 view 1 45
2024-04-02 login 1 20
🎉 成功完成一次完整的“建表 → 插入 → 查询”流程!
🐳 六、使用 Docker 安装(可选,更轻量)
如果你不想修改系统环境,推荐使用 Docker。
# 拉取镜像并启动容器
docker run -d --name clickhouse-server \
-p 8123:8123 \
-p 9000:9000 \
clickhouse/clickhouse-server
# 进入客户端
docker exec -it clickhouse-server clickhouse-client
🔗 端口说明:
8123:HTTP 接口(可用于浏览器或 curl 访问)9000:原生 TCP 接口(clickhouse-client 使用)
🌐 七、通过 HTTP 接口访问(可选)
ClickHouse 支持 HTTP 协议,方便集成。
# 使用 curl 发送查询
curl "http://localhost:8123/" \
--data "SELECT now(), version()"
输出:
2024-04-05 10:00:00 23.3.8.21
你也可以在浏览器访问:http://你的IP:8123?query=SELECT%201
🛠️ 八、常用命令与技巧
| 功能 | 命令 |
|---|---|
| 显示数据库 | SHOW DATABASES; |
| 显示表 | SHOW TABLES; |
| 查看表结构 | DESCRIBE TABLE user_log; |
| 退出客户端 | exit 或 Ctrl+D |
| 查看当前用户 | SELECT user(); |
| 查看服务器版本 | SELECT version(); |
🧹 九、清理与卸载(可选)
停止服务
sudo service clickhouse-server stop
卸载(APT 安装)
sudo apt-get remove --purge clickhouse-server clickhouse-client
sudo apt-get autoremove
sudo rm -rf /etc/clickhouse* /var/lib/clickhouse /var/log/clickhouse*
✅ 十、总结:快速安装与体验要点
| 步骤 | 内容 |
|---|---|
| 1 | 使用 APT 或 Docker 安装 ClickHouse |
| 2 | 启动 clickhouse-server 服务 |
| 3 | 使用 clickhouse-client 连接 |
| 4 | 创建表、插入数据、执行聚合查询 |
| 5 | 体验列式数据库的高速分析能力 |
🎯 下一步建议
- 尝试导入更大的数据集(如 100 万条日志)测试查询性能
- 学习
MergeTree表引擎的高级用法 - 使用
clickhouse-client --format查看不同输出格式 - 探索可视化工具(如 DataGrip、DBeaver、Superset 连接 ClickHouse)
🎉 恭喜你,已经成功安装并体验了 ClickHouse!
你现在拥有了一个高性能 OLAP 数据库,可以开始构建实时分析系统了!
💬 口号:“三分钟安装,一秒查十亿” —— ClickHouse,为分析而生。
944

被折叠的 条评论
为什么被折叠?



