Clickhouse数据库linux系统离线安装部署-单机版

文章详细介绍了如何在CentOS系统上进行Clickhouse的离线安装,包括取消文件数限制、关闭SELINUX、下载安装软件、配置远程访问和防火墙端口,以及启动和测试Clickhouse服务的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、系统配置

1.CentOS 取消打开文件数限制

编辑limits.conf、20-nproc.conf 两个系统配置文件,在末尾加入以下内容。

# 编辑limits.conf文件
vi /etc/security/limits.conf
# 编辑20-nproc.conf文件
vi /etc/security/limits.d/20-nproc.conf

增加内容如下:

* soft nofile 65536
* hard nofile 65536
* soft nproc 131072
* hard nproc 131072

2.关闭SELINUX

修改config文件,将 SELINUX设置disabled

vi /etc/selinux/config

禁用SELINUX,如下图。
在这里插入图片描述

二、软件下载及安装

1.软件下载

clickhouse软件下载地址:
https://packages.clickhouse.com/rpm/stable/
依赖包下载地址:
联网环境可以通过yumdownloader命令将离线包下载到本地

安装包下载以下3个文件即可,如下图。
在这里插入图片描述
依赖包libtool、unixODBC相关依赖关依赖

yumdownloader --resolve --destdir /root/dep libtool *unixODBC*

使用yumdownloader下载的相关依赖包较多,这里我就不截图了。使用上述介绍的方法你就可以下载全部的安装包和依赖包。如果你比较懒,文末我也提供的下载好的安装包、依赖包下载地址。

2.安装离线依赖包

我下载好的依赖包文件夹是ck-depend-packs,先将ck-depend-packs文件夹上传至服务器,进入文件目录后执行以下命令进项安装。

 rpm -ivh  *.rpm  --nodeps  --force

3.安装clickhouse软件

我下载好的依赖包文件夹是ck-install-packs,先将ck-install-packs上传至服务器,然后进入ck-install-packs目录,执行安装命令。

rpm -ivh  *.rpm

期间要求输入数据库密码,随后提示successfully,则表示你安装成功。如下图。
在这里插入图片描述

三、访问权限配置

1.配置clickhouse允许远程访问

给clickhouse配置文件config.xml增加写权限并编辑该文件。

# 增加写权限
chmod +w /etc/clickhouse-server/config.xml
# 编辑config.xml配置文件
vi /etc/clickhouse-server/config.xml

把 <listen_host>0.0.0.0</listen_host> 的注释打开。如下图。
在这里插入图片描述

2.防火墙配置

执行以下命令开放linux系统的8123和9000端口。
注意:
9000就是服务的默认监听端口号,在使用 clickhouse-client 连接时就是使用这个。
8123则是JDBC网络远程连接时使用。

添加开放端口

firewall-cmd --zone=public --add-port=8123/tcp --permanent
firewall-cmd --zone=public --add-port=9000/tcp --permanent

重启加载防火墙配置

firewall-cmd --reload

四、启动并测试

启动Server服务

systemctl start clickhouse-server

client命令行连接-多命令行模式

 clickhouse-client -m --password <密码>

连接后就可以执行sql了。

总结

安装文件及依赖包下载地址:Clickhouse数据库linux系统离线安装部署-单机版

<think>好的,我现在需要帮助用户解决在Linux系统中进行离线安装部署的问题。用户已经提供了几个相关的引用,看起来他们可能是在寻找一个通用的离线安装方法,或者针对特定软件的步骤。首先,我应该先回顾用户提供的引用内容,看看有哪些共同点和有用的信息。 用户引用了关于Nginx、Clickhouse、FFmpeg、Redis等软件的离线安装教程。这些引用中提到的步骤包括准备依赖包、使用离线包解压、配置环境变量、编译安装等。例如,引用2中详细描述了如何离线安装GCC、G++以及Nginx的依赖组件如PCRE、zlib、OpenSSL,然后安装Nginx主程序。这可能是一个通用的流程:安装依赖、配置、编译安装。 用户的上一个问题中,我给出了关于OpenSSL的使用指南,现在用户进一步询问Linux系统离线安装部署方法,可能希望得到一个通用的指导,而不仅仅是特定软件。因此,我需要综合这些引用中的步骤,整理出一个适用于大多数Linux离线安装的通用教程,并可能针对不同发行版(如Debian/Ubuntu和CentOS/RHEL)给出不同的命令。 需要注意的是,用户提到的引用中有使用apt和yum的命令,但都是在离线环境下准备依赖包的情况。例如,引用1提到使用sudo apt install unzip,但这是在离线环境下,可能需要先下载好unzip的deb或rpm包,然后手动安装。因此,在教程中需要强调如何收集依赖包,以及如何手动安装这些包。 另外,用户引用的内容中有提到使用yumdownloader在联网环境下载依赖包,这可能是一个关键点。因此,在通用步骤中,可能需要包括在联网机器上下载所有需要的包,然后转移到离线机器上进行安装。这适用于Debian和RPM系的系统,分别使用apt-offline或yumdownloader工具。 此外,用户引用中的例子涉及到编译安装(如Nginx、FFmpeg),所以可能需要包括源代码编译的步骤,以及如何处理依赖关系。例如,FFmpeg需要解决nasm/yasm的问题,这可能需要先离线安装这些工具。 还需要考虑权限问题,比如如何设置环境变量,如何将安装的软件添加到PATH中,以及如何处理服务的管理(如systemd服务文件配置)。 用户可能遇到的常见问题包括依赖缺失、版本不兼容、权限不足等,需要在教程中给出解决方法,如使用ldd检查依赖,或手动创建符号链接等。 最后,根据用户之前的问题,可能需要生成相关问题,比如如何验证安装,如何处理特定错误,或如何更新离线仓库等。 总结步骤可能包括: 1. 准备离线包(使用apt-offline或yumdownloader) 2. 传输到离线环境 3. 安装依赖包(使用dpkg或rpm) 4. 编译安装(如果需要) 5. 配置环境变量和服务 6. 验证安装 需要确保每个步骤都清晰,并给出具体命令示例,同时注意不同发行版的差异。还要提醒用户注意权限和依赖顺序,以及安全方面的建议,比如校验文件完整性。</think>### Linux系统离线安装部署通用指南 #### 一、离线安装通用流程 1. **环境准备** - 在联网环境中下载所有依赖包和主程序 - **Debian/Ubuntu**:使用 `apt-offline` 生成依赖清单并下载 ```bash # 生成依赖清单(示例:安装nginx) sudo apt-get install -y apt-offline apt-offline set nginx.sig --install-packages nginx # 在联网机器下载所有依赖包 apt-offline get nginx.sig --bundle nginx.zip ``` - **CentOS/RHEL**:使用 `yumdownloader` 下载依赖包 ```bash # 下载主包及依赖(示例:安装redis) yum install -y yum-utils yumdownloader --resolve --destdir=./redis-packages redis ``` 2. **传输文件到离线环境** - 使用U盘、SFTP或内网传输工具将打包文件(如 `nginx.zip` 或 `redis-packages/`)复制到目标服务器。 3. **离线安装依赖包** - **Debian/Ubuntu**:解压离线包并批量安装 ```bash unzip nginx.zip -d ./offline-packages sudo dpkg -i ./offline-packages/*.deb ``` - **CentOS/RHEL**:使用 `rpm` 或 `yum localinstall` ```bash cd redis-packages sudo rpm -ivh *.rpm # 或 sudo yum localinstall *.rpm ``` 4. **编译安装(可选)** - 若需从源码安装(如Nginx、FFmpeg): ```bash tar -zxvf nginx-1.23.4.tar.gz cd nginx-1.23.4 ./configure --prefix=/usr/local/nginx --with-pcre=/usr/local/pcre make && sudo make install ``` --- #### 二、关键组件部署示例 1. **Nginx离线安装** - 依赖组件:PCRE、zlib、OpenSSL ```bash # 安装PCRE(需提前下载离线包) tar -xvf pcre-8.45.tar.gz cd pcre-8.45 ./configure && make && sudo make install # 安装Nginx主程序(配置依赖路径) ./configure --with-pcre=/usr/local/pcre --with-zlib=/usr/local/zlib ``` 2. **Redis离线部署** - 直接使用预编译二进制文件: ```bash tar -xvf redis-6.2.6.tar.gz cd redis-6.2.6/src sudo mv redis-server /usr/local/bin/ sudo cp redis.conf /etc/redis/ ``` --- #### 三、常见问题与解决方法 1. **依赖缺失错误** - **现象**:`error while loading shared libraries: libssl.so.1.1` - **解决**:手动创建符号链接或安装缺失库 ```bash sudo ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/ ``` 2. **编译配置失败** - **现象**:`configure: error: C compiler cannot create executables` - **原因**:GCC/G++未安装 - **解决**:离线安装GCC(参考引用[2]) ```bash sudo dpkg -i gcc-10_10.3.0-1ubuntu1_amd64.deb ``` 3. **服务启动失败** - **验证服务状态**: ```bash systemctl status nginx # 若未配置systemd,直接执行二进制文件 /usr/local/nginx/sbin/nginx -t # 检查配置语法 ``` --- #### 四、安全与维护建议 1. **文件校验** - 使用 `sha256sum` 验证离线包完整性: ```bash sha256sum nginx.tar.gz | awk '{print $1}' > nginx.sha256 ``` 2. **环境变量配置** - 将自定义安装路径加入 `PATH`: ```bash echo 'export PATH=/usr/local/nginx/sbin:$PATH' >> ~/.bashrc source ~/.bashrc ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小马穿云

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值