当前位置: 首页 > news >正文

redis升级至7.0.15版本

说明:

redis版本升级制约限制:
jdk=1.8, springboot=2.7.18
springboot 内置lettuce=6.1.10.RELEASE, springboot内置的jedis=3.8.0
适配redis的版本为7.0.x. 最新版本为7.0.15.
针对最新版本:7.2.4 使用的RESP3 协议,存在解析失败风险,以及ACL 认证异常。(自测验证能正常使用,未进行大数据量验证)

redis原始版本: 6.2.6
redis可以通过快照进行数据的备份和还原。

服务安装

Docker 安装:

docker run -d --name redis-7.0.15-p 6379:6379 redis:7.0.15redis-server /data/redis.conf

linux安装:

# 创建依赖文件夹
mkdir -p /opt/easy-cloud/redis-7.0.15/logs && mkdir -p /opt/easy-cloud/redis-src && touch /opt/easy-cloud/redis-7.0.15/logs/redis.log

# 进入安装目录

cd /opt/easy-cloud

# 服务下载

wget https://download.redis.io/releases/redis-7.0.15.tar.gz

# 解压到src目录

tar -zxf redis-7.0.15.tar.gz -C ./redis-src --strip-components 1

# 进入目录:

cd redis-src

# 编译

make

# 安装

make PREFIX=/opt/easy-cloud/redis-7.0.15install

windows安装:

服务升级:

前置备份

# 进入文件夹 设置redis的密码(如果配置文件内有密码)
export REDISCLI_AUTH=xxxx

cd /opt/easy-cloud

#老版本服务备份
tar -zcvf redis-6.2.6.tar.gz redis-6.2.6/

#新版本配置文件备份
mv redis-7.0.15/redis.conf redis-7.0.15/redis.conf.7.0.15.bak

#老版本配置文件覆盖新版本
cp redis-6.2.6/redis.conf redis-7.0.15/redis.conf

#历史服务镜像快照备份
./redis-6.2.6/bin/redis-cli bgsave
# 生成配置文件默认是根目录的:dump.rdb

新版本启动

# 进入目录
export REDISCLI_AUTH=xxxx
cd /opt/easy-cloud/redis-7.0.15

# 停止老服务
/opt/easy-cloud/redis-6.2.6/bin/redis-cli shutdown
# 复制快照到当前目录
cp ../redis-6.2.6/dump.rdb dump.rdb

#确认配置文件已经替换
cat redis.conf

-- 如果存在appendonly yes 代表通过AOF加载数据,需要先rdb重启,再AOF重启(见备注),
-- 如果存在appendonly no 或缺省,代表rdb加载数据,无需进行本小结的后续步骤。

启动服务
./bin/redis-server ./redis.conf

验证服务是否启动成功
./bin/redis-cli ping
-- 返回PONG代表成功(root代表密码需根据服务进行更换)

查看redis内数据信息
./bin/redis-cli info keyspace

功能验证

  • redis客户端链接,./bin/redis-cli info keyspace

  • 真实项目链接后进行redis操作

版本回退

# 停止新服务
/opt/easy-cloud/redis-7.0.15/bin/redis-cli shutdown

#进入文件夹
cd /opt/easy-cloud

#解压老版本数据(如果原始文件夹未删除可忽略)
tar -zxvf redis-6.2.6.tar.gz

#启动老服务
cd /redis-6.2.6 ./bin/redis-server ./redis.conf

#验证服务正常启动
./bin/redis-cli info keyspace

#风险点:新版本的快照,老版本加载失败。新版本运行期间数据丢失。

数据删除

rm -rf /opt/easy-cloud/redis-*.tar.gz
rm -rf /opt/easy-cloud/redis-6.2.6
rm -rf /opt/easy-cloud/redis-src

备注

数据恢复失败

查看配置文件的aof配置是否为aof启动。

-- copy快照文件dump.rdb
cp /xxx/dump.rdb dump.rdb
-- 关闭AOF启动服务。
./bin/redis-server ./redis.conf --appendonly no
-- 查看启动日志
cat logs/redis.log |grep RDB
-- 返回字样: Done loading RDB, keys loaded: xxx, keys expired: xxxx.
-- 开启AOF
./bin/redis-cli CONFIG SET appendonly yes
-- 生成快照。
./bin/redis-cli bgsave
-- 关闭服务。
./bin/redis-cli shutdown

http://www.cnnetsun.cn/news/86582.html

相关文章:

  • Bootstrap:随机森林的“多样性引擎”与量化利器
  • 块状Bootstrap:让金融时间序列“记忆”不丢失的魔法
  • 利用清华源加速TensorRT相关依赖的npm安装过程
  • 跨界转型AI产品经理:非算法专业出身的成功之道,揭秘大模型时代的新机遇!
  • 小学物理竞赛考试题目要点
  • Qwen3-VL-30B GPU配置与显存优化全指南
  • Excalidraw Webhook事件机制实现外部系统联动
  • 乔家大院漫游记:在晋商老宅里读懂百年风华
  • Langchain-Chatchat源码部署与Ollama集成
  • 全球USB厂商及设备ID完整列表
  • 2001-2020年全球总初级生产力数据(逐小时/0.1°分辨率)
  • 高速公路无人机车流密度监测 构建动态交通新维度 基于YOLOv8的无人机车辆检测算法 边缘计算无人机交通监测设备
  • 山区搜救无人机人员检测算法 技术攻坚与生命救援的融合演进 城市高空无人机人群密度分析 多模态融合无人机识别系统
  • Ubuntu下使用conda安装tensorflow-gpu避坑指南
  • Qwen3-32B如何突破小语种翻译困境
  • Qwen-Image-Edit结合LoRA实现精准图像编辑
  • 好写作AI|文献综述“摆烂”神器:秒读百篇,还能帮你“挑刺儿吵架”
  • 本地运行ACE-Step生成AI音乐的完整指南
  • PS, Maya, UE 三端贴图对齐
  • AI智能图像分割站:精准对象提取、语义分割与交互式编辑
  • LangFlow Agent组件详解:构建自主任务代理
  • AutoGPT使用与架构全面解析
  • 高性能AI服务搭建:TensorRT与FP16精度校准实践
  • Dify与Anything-LLM整合打造企业智能问答系统
  • EmotiVoice:开源多情感TTS语音合成新体验
  • HunyuanVideo-Foley API详解与实战调用
  • FLUX.1-dev-Controlnet-Union环境配置全指南
  • Langchain-Chatchat本地部署完整指南
  • 场景化曝光:南宁出租车广告与GEO优化的协同密码
  • 卫星遥感数据核心参数解析:空间分辨率与时间分辨率