Linux环境下升级redis的详细步骤记录

 更新时间:2024年12月07日 15:21:01   作者:荒Huang  
这篇文章主要给大家介绍了关于Linux环境下升级redis的详细步骤,描述了如何从旧版本升级到新版本Redis,包括备份旧数据、下载和安装新版本、复制配置文件和数据、停止旧版本并启动新版本的过程,需要的朋友可以参考下

一、摘要

最近漏洞扫描服务器发现,Redis 缓冲区溢出漏洞(CVE-2024-31449),解决办法redis更新到6.2.16、7.2.6或7.4.1及以上版本。

二、漏洞描述

漏洞描述:经过身份验证的用户可能会使用特制的 Lua 脚本来触发位库中的堆栈缓冲区溢出,这可能会导致远程代码执行。所有带有 Lua 脚本的 Redis 版本都存在该问题。

目前受影响的Redis版本:
2.6 ≤ Redis < 6.2.16
7.0.0 ≤ Redis < 7.2.6
7.4.0 ≤ Redis < 7.4.1

三、旧redis版本

1.查看旧redis版本信息

# 登录redis客户端
redis-cli

# 输入密码
auth password

# 查看redis版本
info

 2.备份redis数据

(1)查看目前redis的key

dbsize

从下图可知,目前redis中所有的key值只有4条数据

(2)备份数据

# 登录redis客户端
redis-cli

# 备份命令
SAVE 
或
BGSAVE

3.查看备份文件地址

# 登录redis客户端

# 通过命令找到备份的数据文件
config get dir
config get dbfilename

4.将旧redis安装目录备份

例如:旧redis安装目录在/usr/local/redis7

备份旧目录

mv /usr/local/redis7  /usr/local/redis7_20241024.bak

四、安装新版本redis

1.下载redis安装包

下载地址:Index of /releases/

大家可以自行选择redis的版本,笔者选择redis是不在漏洞范围内的7.2.6版本

2.安装redis

(1)执行安装

# 1.解压redis
tar -zxvf redis-7.2.6.tar.gz
# 2.切换到加压后redis目录
cd redis-7.2.6
# 3.执行安装
make install

(2)将redis目录移动到之前旧redis目录

注意:新redis目录名和旧redis目录名保持一致,这里涉及到redis的启动和环境变量,保持一致可以解决这些问题。我们前面已经修改过旧redis目录不会出现覆盖的问题。

mv redis-7.2.6 /usr/local/redis7

(3)复制redis配置文件

# 切换目录
cd /usr/local/redis7/src

# 将新的redis配置文件备份
mv redis.conf redis.conf_20241024.bak

# 复制旧配置文件到新redis目录的src下
cp -ar /usr/local/redis7_20241024.bak/redis.conf ./

(4)复制备份数据

cp /usr/local/redis7_20241024.bak/src/dump.rdb /usr/local/redis7/src

(5)停止旧的redis

# 查看redis进程
ps -ef|grep redis

# 杀死进程
kill -9 redis进程号

(6)启动新的redis

说明:如果自行配置过redis的启动文件,如通过systemctl start redis启动的命令,需要注意修改redis启动的系统配置文件。这里都是手动启动redis的,没有注册到系统服务中。

# 切换到新redis目录
cd /usr/local/redis7/src

# 启动redis并指定配置文件
./redis-server /usr/local/redis7/redis.conf

五、验证

1.查看新安装的redis版本

redis-server -v

2.查看数据是否恢复

从图可知数据和旧数据一致,说明数据恢复了,或者通过redis可视化工具连接查看数据。

到此redis升级完成。

总结

到此这篇关于Linux环境下升级redis的文章就介绍到这了,更多相关Linux环境升级redis内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Redis内存回收策略

    Redis内存回收策略

    这篇文章主要介绍了Redis内存回收策略,需要的朋友可以参考下
    2007-02-02
  • 浅谈Redis内存回收策略

    浅谈Redis内存回收策略

    本文主要介绍了浅谈Redis内存回收策略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • Redis持久化解读

    Redis持久化解读

    Redis是一种内存级数据库,提供高速读写性能,但数据易失,它支持三种持久化方式:RDB(快照持久化)、AOF(追加文件持久化)和混合持久化,RDB通过快照将数据保存到磁盘,AOF记录所有写操作命令,混合持久化结合两者优点
    2025-01-01
  • Redis migrate数据迁移工具的使用教程

    Redis migrate数据迁移工具的使用教程

    这篇文章主要给大家介绍了关于Redis migrate数据迁移工具的使用教程,文中通过示例代码介绍的非常详细,对大家的学习或者使用Redis具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2020-08-08
  • Redis集群节点通信过程/原理流程分析

    Redis集群节点通信过程/原理流程分析

    这篇文章主要介绍了Redis集群节点通信过程/原理,详细介绍了Cluster(集群)的节点通信的流程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • redis和rabbitmq实现延时队列的示例代码

    redis和rabbitmq实现延时队列的示例代码

    在高并发场景下,延迟队列显得尤为重要,本文主要介绍了两种方式,redis和rabbitmq实现延时队列,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • Redis实现分布式锁详解

    Redis实现分布式锁详解

    这篇文章主要介绍了redis如何实现分布式锁,文章中有详细的示例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2023-04-04
  • redis数据类型及应用场景知识点总结

    redis数据类型及应用场景知识点总结

    在本篇文章里小编给大家整理的是关于
    2020-02-02
  • 搭建单机Redis缓存服务的实现

    搭建单机Redis缓存服务的实现

    本文主要介绍了搭建单机Redis缓存服务的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • Redis事务与数据持久化方式

    Redis事务与数据持久化方式

    该文档主要介绍了Redis事务和持久化机制,事务通过将多个命令打包执行,而持久化则通过快照(RDB)和追加式文件(AOF)两种方式将内存数据保存到磁盘,以防止数据丢失
    2025-01-01

最新评论