RHEL 9.8 安装 Redis 8.8.1

RHEL 9.8 安装 Redis 8.8.1

    • [RHEL 9.8 安装 Redis 8.8.1](#RHEL 9.8 安装 Redis 8.8.1)
      • [1. 安装编译依赖](#1. 安装编译依赖)
      • [2. 下载 Redis 8.8.1](#2. 下载 Redis 8.8.1)
      • [3. 编译安装 Redis](#3. 编译安装 Redis)
      • [4. 创建 Redis 运行用户](#4. 创建 Redis 运行用户)
      • [5. 创建 Redis 目录](#5. 创建 Redis 目录)
      • [6. 备份 Redis 配置](#6. 备份 Redis 配置)
      • [7. 修改 Redis 配置](#7. 修改 Redis 配置)
      • [8. 创建 systemd 服务](#8. 创建 systemd 服务)
      • [9. 重新加载 systemd](#9. 重新加载 systemd)
      • [10. 启动 Redis](#10. 启动 Redis)
      • [11. 设置开机启动](#11. 设置开机启动)
      • [12. 检查 Redis 端口](#12. 检查 Redis 端口)
      • [13. 测试 Redis](#13. 测试 Redis)
    • 最终目录结构
    • 常用运维命令
    • 如果以后需要远程访问

RHEL 9.8 安装 Redis 8.8.1

适用环境:

text 复制代码
OS      : RHEL 9.8
Redis   : 8.8.1
安装方式 : 源码编译
程序目录 : /usr/local/bin
配置目录 : /etc/redis
数据目录 : /data/redis
日志目录 : /var/log/redis
服务管理 : systemd

1. 安装编译依赖

bash 复制代码
dnf install -y gcc gcc-c++ make tar wget

确认编译环境:

bash 复制代码
gcc --version
make --version

2. 下载 Redis 8.8.1

进入软件目录:

bash 复制代码
cd /soft

下载:

bash 复制代码
wget https://download.redis.io/releases/redis-8.8.1.tar.gz

解压:

bash 复制代码
tar -zxvf redis-8.8.1.tar.gz
cd redis-8.8.1

3. 编译安装 Redis

开始编译:

bash 复制代码
make -j$(nproc)

编译完成后先确认:

bash 复制代码
src/redis-server --version

正常应看到:

text 复制代码
Redis server v=8.8.1

安装到系统:

bash 复制代码
make install

默认安装到:

text 复制代码
/usr/local/bin

检查:

bash 复制代码
redis-server --version
redis-cli --version

4. 创建 Redis 运行用户

Redis 不建议直接使用 root 运行。

bash 复制代码
useradd -r -s /sbin/nologin redis

如果提示用户已经存在,可以忽略。

5. 创建 Redis 目录

bash 复制代码
mkdir -p /etc/redis
mkdir -p /data/redis
mkdir -p /var/log/redis

复制默认配置:

bash 复制代码
cp /soft/redis-8.8.1/redis.conf /etc/redis/redis.conf

设置权限:

bash 复制代码
chown -R redis:redis /data/redis
chown -R redis:redis /var/log/redis
chown redis:redis /etc/redis/redis.conf

6. 备份 Redis 配置

bash 复制代码
cp /etc/redis/redis.conf /etc/redis/redis.conf.bak

7. 修改 Redis 配置

编辑:

bash 复制代码
vi /etc/redis/redis.conf

重点确认或修改以下参数:

ini 复制代码
bind 127.0.0.1

protected-mode yes

port 6379

daemonize no

supervised no

dir /data/redis

logfile /var/log/redis/redis.log

appendonly yes

其中最重要的是:

ini 复制代码
daemonize no
supervised no

因为后面 Redis 交给 systemd 托管,不让 Redis 自己后台运行,也不使用 systemd notify 模式。

8. 创建 systemd 服务

创建:

bash 复制代码
vi /etc/systemd/system/redis.service

写入:

ini 复制代码
[Unit]
Description=Redis 8.8.1
After=network.target

[Service]
Type=simple
User=redis
Group=redis

ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown

Restart=on-failure
RestartSec=5

LimitNOFILE=65535

[Install]
WantedBy=multi-user.target

这里建议使用:

ini 复制代码
Type=simple

不要使用:

ini 复制代码
Type=notify

对应 redis.conf 也保持:

ini 复制代码
supervised no

9. 重新加载 systemd

bash 复制代码
systemctl daemon-reload

如果之前 Redis 启动失败过,可以执行:

bash 复制代码
systemctl reset-failed redis

10. 启动 Redis

bash 复制代码
systemctl start redis

查看状态:

bash 复制代码
systemctl status redis -l --no-pager

正常应看到:

text 复制代码
Active: active (running)

11. 设置开机启动

bash 复制代码
systemctl enable redis

或者启动并设置开机启动一步完成:

bash 复制代码
systemctl enable --now redis

检查:

bash 复制代码
systemctl is-enabled redis

正常:

text 复制代码
enabled

12. 检查 Redis 端口

bash 复制代码
ss -lntp | grep 6379

默认只监听本机:

text 复制代码
127.0.0.1:6379

这是比较安全的配置。

13. 测试 Redis

直接执行:

bash 复制代码
redis-cli ping

正常返回:

text 复制代码
PONG

进入 Redis:

bash 复制代码
redis-cli

测试:

text 复制代码
127.0.0.1:6379> set name redis881
OK

127.0.0.1:6379> get name
"redis881"

退出:

text 复制代码
127.0.0.1:6379> exit

检查 Redis 版本:

bash 复制代码
redis-cli INFO server | grep redis_version

正常:

text 复制代码
redis_version:8.8.1

最终目录结构

text 复制代码
/soft/
└── redis-8.8.1/
    └── Redis源码

/usr/local/bin/
├── redis-server
├── redis-cli
├── redis-benchmark
└── ...

/etc/redis/
├── redis.conf
└── redis.conf.bak

/data/redis/
└── Redis数据文件

/var/log/redis/
└── redis.log

/etc/systemd/system/
└── redis.service

常用运维命令

以后主要记住这些即可:

bash 复制代码
systemctl start redis
systemctl stop redis
systemctl restart redis
systemctl status redis

查看日志:

bash 复制代码
journalctl -u redis

实时查看:

bash 复制代码
journalctl -u redis -f

查看 Redis 自身日志:

bash 复制代码
tail -f /var/log/redis/redis.log

检查端口:

bash 复制代码
ss -lntp | grep 6379

检查进程:

bash 复制代码
ps -ef | grep redis

测试:

bash 复制代码
redis-cli ping

查看版本:

bash 复制代码
redis-server --version

如果以后需要远程访问

当前配置:

ini 复制代码
bind 127.0.0.1

只能本机访问。

如果 Spring Boot 或其他业务程序也部署在这台服务器上,建议保持不变

如果业务服务器和 Redis 是不同机器:

ini 复制代码
bind 0.0.0.0
protected-mode no

但这种方式风险比较大。

或者绑定 Redis 服务器内网 IP,例如:

ini 复制代码
bind 127.0.0.1 192.168.10.20
protected-mode yes

然后再配置 ACL 或密码,并只允许指定内网服务器访问 6379。

相关推荐
Python私教1 小时前
如意 Django CRM 容器化实战:后端、前端、数据库、Redis 的协同启动逻辑
前端·数据库·django
海兰2 小时前
【数据库】tdsql(MySQL )的事务隔离级别
android·数据库·mysql
灵析表格2 小时前
Excel连接MySQL的函数化革命:灵析表格MySQL函数族业务应用分析
数据库·mysql·adb·excel·wps·灵析表格·excel公式盒子
todoitbo2 小时前
把发票台账接进 Codex:KingbaseES MCP 的一次只读风险排查实践
数据库·oracle·codex·kingbasees·mcp
Navicat中国2 小时前
使用 Navicat 轻松生成数据库测试数据
数据库·数据
zyplayer-doc3 小时前
核心制度不该被随手修改:用zyplayer-doc锁定文档和全部子文档
大数据·数据库·人工智能·笔记·pdf·ocr
一路向北North3 小时前
Spring AI(11) :ChatPDF-向量数据库、PDF处理、向量写入和向量搜索
数据库·人工智能·spring
暗暗别做白日梦3 小时前
CompletableFuture 并发统计
网络·数据库·oracle
ClouGence3 小时前
告别 Navicat!CloudDM:开源免费一站式数据库开发管理工具
数据库·sql·开源·数据库开发