[关闭]
@liruiyi962464 2025-10-13T02:03:13.000000Z 字数 2500 阅读 74

Redis 从 7.4.0 升级至 8.2.2 操作手册

Linux服务器部署


本手册基于指定文档路径和操作流程编写,全程保留原配置文件,确保升级后服务参数与原环境一致。

一、升级前准备

  1. 备份核心配置文件:按日期命名备份,避免配置丢失。
  1. sudo cp /etc/redis/redis.conf /etc/redis/redis.conf.bak-$(date +%Y%m%d)
  1. 停止 Redis 服务:根据文档中的管理方式二选一,优先使用 systemd。
    • 方式 1(推荐):systemd 管理
  1. sudo systemctl stop redis
  1. sudo service redisd stop
  1. 验证安装包与依赖:确保安装包存在且依赖已就绪。
  1. # 进入文档标准安装包目录
  2. cd /opt/software/web
  3. # 验证安装包完整性
  4. ls -l redis-8.2.2.tar.gz
  5. # 安装文档要求的 gcc 依赖
  6. sudo yum install -y gcc

二、清理旧版本文件

  1. 删除旧版本解压目录:移除 7.4.0 版本的安装目录。
  1. sudo rm -rf /usr/local/redis/redis-7.4.0
  1. 删除旧版本执行文件:清理 /usr/local/bin 下的旧二进制文件。
  1. sudo rm -f /usr/local/bin/redis-server /usr/local/bin/redis-cli
  1. 清理旧 PID 文件:避免新旧版本 PID 冲突。
  1. sudo rm -f /usr/local/redis/redis_8100.pid

三、安装新版本 Redis

  1. 解压安装包:按文档要求解压到指定目录。
  1. sudo tar -zxvf redis-8.2.2.tar.gz -C /usr/local/redis
  1. 编译新版本:进入解压目录,执行文档指定的编译命令。
  1. # 进入解压目录
  2. cd /usr/local/redis/redis-8.2.2
  3. # 按文档命令编译(8.2.2 兼容 MALLOC=libc 参数)
  4. sudo make MALLOC=libc
  1. 安装二进制文件:将编译结果安装到文档指定的 /usr/local/bin。
  1. sudo cd src && make install
  1. 配置用户权限:按文档要求设置 web 用户及用户组权限。
  1. sudo chown -R web:webgrp /usr/local/redis
  2. sudo chown -R web:webgrp /usr/local/bin/redis-*

四、配置系统服务与自启

  1. 复制启动脚本:从新版本目录复制文档指定的启动脚本。
  1. sudo cp /usr/local/redis/redis-8.2.2/utils/redis_init_script /etc/init.d/redisd
  1. 编辑启动脚本:确保脚本指向保留的旧配置文件,关键参数无需修改(已与原配置匹配)。
  1. sudo vim /etc/init.d/redisd

核心参数(脚本内默认匹配,无需修改):
- REDISPORT=8100:文档默认端口,与原配置一致
- EXEC=/usr/local/bin/redis-server:新版本执行文件路径
- CLIEXEC=/usr/local/bin/redis-cli:新版本客户端路径
- PIDFILE=/usr/local/redis/redis_${REDISPORT}.pid:文档指定 PID 路径
- CONF="/etc/redis/redis.conf":指向备份保留的原配置文件
3. 设置脚本权限与自启:按文档标准操作配置系统服务。

  1. # 赋予脚本执行权限
  2. sudo chmod u+x /etc/init.d/redisd
  3. # 添加系统服务并设置开机自启
  4. sudo chkconfig --add redisd
  5. sudo chkconfig redisd on

五、启动与验证服务

  1. 启动服务:使用文档指定的命令启动 Redis。
  1. sudo service redisd start
  1. 验证服务状态:通过多种方式确认服务正常运行。
  1. # 查看 systemd 状态
  2. sudo systemctl start redis
  3. sudo systemctl status redis
  4. # 确认端口监听(默认 8100)
  5. netstat -tulnp | grep 8100
  1. 客户端连接测试:使用原配置的端口和密码连接,验证功能正常。
  1. # 连接 Redis 客户端
  2. redis-cli -h 127.0.0.1 -p 8100 -a Rd24@Zc*
  3. # 执行测试命令
  4. 127.0.0.1:8100> PING # 预期返回 PONG
  5. 127.0.0.1:8100> keys* # 读取所有的keys
  6. 127.0.0.1:8100> get上命令查询到的key即可 # 读测试,预期返回设置的值
  7. # 确认版本升级成功
  8. 127.0.0.1:8100> INFO server | grep redis_version # 预期输出 redis_version:8.2.2

六、常见问题处理

  1. cd /usr/local/redis
  2. sudo rm -f redis_8100.pid
  3. sudo service redisd start
  4. sudo service redisd start
  1. 验证服务状态:通过多种方式确认服务正常运行。
  1. # 查看 systemd 状态
  2. sudo systemctl start redis
  3. sudo systemctl status redis
  4. # 确认端口监听(默认 8100)
  5. netstat -tulnp | grep 8100 或者 ps | grep redis
  1. 客户端连接测试:使用原配置的端口和密码连接,验证功能正常。
  1. # 连接 Redis 客户端
  2. redis-cli -h 127.0.0.1 -p 8100 -a Rd24@Zc*
  3. # 执行测试命令
  4. 127.0.0.1:8100> PING # 预期返回 PONG
  5. 127.0.0.1:8100> SET test_key "upgrade_8.2.2_with_old_conf" # 写测试
  6. 127.0.0.1:8100> GET test_key # 读测试,预期返回设置的值
  7. # 确认版本升级成功
  8. 127.0.0.1:8100> INFO server | grep redis_version # 预期输出 redis_version:8.2.2
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注