杀鸡焉用牛刀 发表于 2025-4-9 14:43:27

[Linux]redis5.0.x升级至7.x完整操作流程

1. 从官网下载最新版redis:

官网地址:https://redis.io/download
https://i-blog.csdnimg.cn/direct/6cc2b11ac0d7424e975d0732988aa136.png
注:下载需要的登录,如果选择使用github账号登录,那么需要提前在github账号中取消勾选“Keep my email addresses private”(隐藏我的邮箱地址),否则会出现如下提示信息:
https://i-blog.csdnimg.cn/direct/014368981d334759982d72b2b5840939.png
下载完成后会得到一个tar.gz后缀名的文件,如下图。
https://i-blog.csdnimg.cn/direct/15c51d912bc844a4becdcf6c409cc949.png
2. 将旧版redis进行制止与备份

2.1 制止redis服务端

cd ~/redis/bin;
./stop-redis.sh;
注:这里的stop-redis.sh是事先自行编写的制止脚本,如果不存在该脚本,可以进入redis-cli步伐所在目录,输入如下命令:
./redis-cli -p <端口号> -a <密码> shutdown;
比方:
./redis-cli -p 6379-a 123456 shutdown;
2.2 备份旧版redis

cd;
cp -a redis redis_old;
注:这里假设redis原目录在家目录的redis目录下,请根据实际情况做调整。
3. 上传至服务器并编译

3.1 使用ftp工具将压缩包上传至服务器用户家目录

3.2 解压压缩包

tar -xzvf redis-7.2.5.tar.gz
解压后会在家目录下天生一个名为redis-7.2.5的目录,此中存放了redis的源码。
3.4 进入解压后的目录进行编译

cd redis-7.2.5

make
编译成功后,会提示编译后的文件存放在redis-7.2.5的src目录下。
![编译成功](https://i-blog.csdnimg.cn/direct/b31ab3d28487496483e7d3a2504c28c9.pnghttps://i-blog.csdnimg.cn/direct/d6460ffbe661404890b80e47d74272c5.png
注:redis源码目录中不包罗configure脚本,因此无法直接通过参数指定安装路径。但是这并不影响我们接下来的操作。
src目录下的,有编译后的脚本,以及很多编译过程中天生的.o、.c文件。
https://i-blog.csdnimg.cn/direct/9c92689cef1c470a97ee6f357b738fc4.png
3.5 将src目录中的可执行文件拷贝到redis目录,覆盖旧版redis可执行文件

3.5.1 筛选出src目录中的可执行文件

ls -l | grep '\-rwx'
https://i-blog.csdnimg.cn/direct/97fe62a0032d47de8d68e517f45eb88e.png
3.5.2 将筛选出来的文件复制到旧版redis可执行文件所在目录

ll | grep '\-rwx' | awk '{ print $9 }' | xargs -I {} cp {} ~/redis/sbin;
3.5.3 去原redis目录查抄复制情况

cd ~/redis/sbin;
ls -l;
https://i-blog.csdnimg.cn/direct/b22d4aebdf554617b414078a23df35a1.png
根据文件更新时间判定,文件均已完成替换。
4. 查抄redis版本

cd ~/redis/sbin
./redis-cli --version;
./redis-server --version;
https://i-blog.csdnimg.cn/direct/e7b10f773fc5484a8664ff82eef07566.png
显示版本号均为7.2.5。
5. 重新启动redis-server

cd bin;
./start-redis.sh;
留意:如果存在redis主从大概集群,则需要将redis-server全部制止后,待全部更新完毕,再逐个启动redis-server。
start-server.sh为事先写好的redis启动脚本。如果不存在该脚本,也可通过redis-server步伐启动脚本。
cd ~/redis/bin/;
./redis-server <conf文件全路径>;
6. 通过日志查抄启动情况

如果redis版本差别太大,有可能对恒久化文件的读写会出现问题。
处理方式是全停redis-server,然后将恒久化文件(后缀为*.aop,*.rdp)全部清除后,再重启应用。
成功运行时在日志中可见到success字样,并无报错信息,如下:
https://i-blog.csdnimg.cn/direct/a141debae0ff4bc0822c6d80af812588.png

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: [Linux]redis5.0.x升级至7.x完整操作流程