麒麟V10部署ClickHouse失败常见原因有CPU架构不匹配、依赖缺失或安装包顺序错误;推荐RPM离线安装(适配x86_64/aarch64)、TGZ手动安装(定制化部署)及Docker容器安装(开发测试)。

如果您在麒麟操作系统上部署ClickHouse数据库,但安装失败或服务无法启动,则可能是由于CPU架构不匹配、依赖缺失或安装包顺序错误。以下是针对麒麟V10系统的多种可行安装方法:
一、基于RPM包的离线安装(推荐用于无网络环境)
该方法适用于内网隔离、无法访问外网的生产服务器,通过预下载适配麒麟V10 CPU架构(x86_64或aarch64)的RPM包完成安装,避免架构错配导致的“错误的ELF格式”报错。
1、确认系统架构:执行 uname -p 命令,输出为 x86_64 或 aarch64,据此选择对应架构的RPM包。
2、创建安装目录并进入:执行 mkdir -p /software/clickhouse && cd /software/clickhouse。
3、下载四类RPM包(以21.1.9.41版本为例):需获取 clickhouse-common-static、clickhouse-server-common、clickhouse-server、clickhouse-client 四个RPM文件,确保全部为同一版本且架构一致。
4、按依赖顺序安装:依次执行以下命令:
rpm -ivh clickhouse-common-static-21.1.9.41-1.el7.x86_64.rpm
rpm -ivh clickhouse-server-common-21.1.9.41-1.el7.x86_64.rpm
rpm -ivh clickhouse-server-21.1.9.41-1.el7.x86_64.rpm
rpm -ivh clickhouse-client-21.1.9.41-1.el7.x86_64.rpm
5、初始化配置:安装完成后,/etc/clickhouse-server/config.xml 和 /etc/clickhouse-server/users.xml 已自动生成,可按需修改监听地址与用户权限。
二、基于TGZ压缩包的手动安装(适用于定制化部署)
该方法绕过包管理器,直接解压二进制文件并注册为systemd服务,便于控制安装路径与运行用户,适合对系统目录结构有严格要求的场景。
1、下载对应架构的TGZ包:从 https://packages.clickhouse.com/tgz/stable/ 获取 clickhouse-common-static、clickhouse-server、clickhouse-client 三个压缩包(无需dbg包)。
2、解压并安装核心组件:依次执行:
tar -zxvf clickhouse-common-static-21.1.9.41.tgz
sudo ./clickhouse-common-static-21.1.9.41/install/doinst.sh
tar -zxvf clickhouse-server-21.1.9.41.tgz
sudo ./clickhouse-server-21.1.9.41/install/doinst.sh
tar -zxvf clickhouse-client-21.1.9.41.tgz
sudo ./clickhouse-client-21.1.9.41/install/doinst.sh
3、设置文件限制:编辑 /etc/security/limits.conf,追加两行:
* soft nofile 65536
* hard nofile 65536
4、启用并启动服务:执行 sudo systemctl daemon-reload,然后运行 sudo systemctl enable clickhouse-server 与 sudo systemctl start clickhouse-server。
三、使用Docker容器方式安装(适用于快速验证与开发测试)
该方法将ClickHouse运行于隔离容器中,不污染宿主机环境,特别适合多版本共存或临时调试,前提是麒麟V10已成功部署Docker引擎且架构匹配。
1、确认Docker可用:执行 docker version,确保Server端显示 Arch: x86_64 或 aarch64,与系统一致。
2、拉取官方镜像:运行 docker pull yandex/clickhouse-server:21.1.9.41(注意镜像标签需与目标版本严格对应)。
3、创建持久化目录:执行 mkdir -p /data/clickhouse/{config,logs,data},并将 config.xml 与 users.xml 放入 /data/clickhouse/config 目录。
4、启动容器:执行以下命令启动带挂载的容器:
docker run -d --name clickhouse-server -p 8123:8123 -p 9000:9000 -v /data/clickhouse/config:/etc/clickhouse-server/ -v /data/clickhouse/logs:/var/log/clickhouse-server/ -v /data/clickhouse/data:/var/lib/clickhouse/ yandex/clickhouse-server:21.1.9.41
5、验证连接:使用 docker exec -it clickhouse-server clickhouse-client 进入交互式客户端,执行 SELECT version() 确认服务响应。

















