linux上redis升级(将 Redis 3.0.7 升级到 5.0.0版本)

Posted T_LOYO

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux上redis升级(将 Redis 3.0.7 升级到 5.0.0版本)相关的知识,希望对你有一定的参考价值。

linux上redis升级

处理:将 Redis 升级到 5.0.0版本,下载地址:https://redis.io/download/

redis 原版本:3.0.7,现在就对他做一下升级处理。

升级方式:离线升级

升级时间规划:尽可能的选择没有业务在跑的时间段进行升级,并提前通告升级时间段。

1、下载redis 源码包:
redis 下载地址 根据下载地址选择自己要安装的redis 版本的源码包。这里我下载的是 redis-5.0.0.tar.gz。

这里你可以先下载到本地,在通过rz的方式上传到服务器,也可以直接 wget 下载。

通过wget下载

#如果没安装wget则安装 wget

yum install -y wget

#下载 redis

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

此处是先下载到本地(其他环境有包可以直接拷贝过来),通过rz的方式上传到服务器

#解压源码包

tar -zxvf redis-5.0.0.tar.gz

提前通知升级时间,在升级时间段:

**登录redis执行save 在杀进程之前保存数据

#停止旧版的redis

ps -ef|grep redis

kill -9 进程id

2、备份数据:

在升级前,可以根据情况来决定是否需要备份数据和配置文件。

如果持久化用的是rdb,备份.rdb文件,默认叫 dump.rdb。

如果持久化用的是aof,备份.aof文件,默认叫 appendonly.aof

配置文件是 redis.conf文件。也可以备份下,这样可以省去修改配置文件。

在启动新版的redis 时,可以将数据文件放到启动目录下。不知道启动目录,可以 redis-cli 下输入:config get dir 查看。

redis.conf 只需要替换新版的redis.conf 即可。

3、编译安装:

进入新版的redis 目录编译安装

cd redis-5.0.0

#编译安装

make && make install

先将新版的配置文件备份,以便更改或替换时出错

cp /opt/redis-5.0.0/ redis.conf /opt/redis-5.0.0/ redis.confbak

#将旧版的配置文件和备份数据文件复制到新版redis 中

cp -p /opt/redis-3.0.7/redis.conf /opt/redis-5.0.0/ redis.conf

创建redis_data目录,用于存放数据

cd /opt/redis-5.0.0/

mkdir redis_data

cp -p /opt/redis-3.0.7/redis_data/dump.rdb /opt/ redis-5.0.0/redis_data/dump.rdb

因为这里是使用旧版的redis.conf ,所以可以不用配置redis.conf 文件的参数(涉及到路径可能需要变动),如果没有使用旧版的话,可以配置以下参数:

注释 bind 127.0.01 允许外部连接

修改protected-mode 为 no 关闭保护模式

修改daemonize 为 yes 允许后台运行

port 端口,可以根据需求修改,比如默认:6379

requirepass 可以设置密码,将注释去掉

#这个也可以在redis 中设置密码:

127.0.0.1:6379> config set requirepass 123123

127.0.0.1:6379> config get requirepass

4、启动新版redis

#/opt/redis-5.0.0/src/redis-server /opt/redis-5.0.0/redis.conf &

#查看redis 是否启动

ps -ef | grep redis

#查看redis 版本

#可以直接看

redis-cli -v

#########至此升级完成!!!

升级完成,可以测试一下有没有问题,没问题便可将原来版本的Redis清理了。

清除原版Redis的目录即可

rm -rf /opt/redis-3.0.7

linux上redis升级

linux上redis升级

我原本的redis 版本是6.2.1,现在就对他做一下升级处理。

1、下载redis 源码包:

redis 下载地址 根据下载地址选择自己要安装的redis 版本的源码包。这里我下载的是 redis-6.2.6.tar.gz。

这里你可以先下载到本地,在通过ftp 的方式上传到服务器,也可以直接 wget 下载。

#安装 wget
yum install -y wget

#下载 redis
wget http://download.redis.io/releases/redis-6.2.6.tar.gz

#解压源码包
tar -zxvf redis-6.2.6.tar.gz

#停止旧版的redis
ps -ef|grep redis
kill -9 进程id

2、备份数据:

在升级前,可以根据情况来决定是否需要备份数据和配置文件。

  • 如果持久化用的是rdb,备份.rdb文件,默认叫 dump.rdb。
  • 如果持久化用的是aof,备份.aof文件,默认叫 appendonly.aof
  • 配置文件是 redis.conf文件。也可以备份下,这样可以省去修改配置文件。

在启动新版的redis 时,可以将数据文件放到启动目录下。不知道启动目录,可以 redis-cli 下输入:config get dir 查看。

redis.conf 只需要替换新版的redis.conf 即可。

3、编译安装:

  • 在编译安装前,查看下gcc 的版本:
#查看gcc 版本
gcc -v
#如果是4.* 的就要升级,因为redis6.2 以上需要gcc 9.*的版本,不然make 编译redis时会报错。
#安装gcc
yum -y install gcc
#升级gcc
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils

#切换到升级的gcc 版本
#临时)
scl enable devtoolset-9 bash
#永久)
echo "source /opt/rh/devtoolset-9/enable" >> /etc/profile

#查看版本是否切换成功:
gcc -v              #如果gcc版本为9.*以上则成功,4.*反之
  • 进入新版的redis 目录编译安装
cd redis-6.2.6
#编译安装
make && make install

#将旧版的配置文件和备份数据文件复制到新版redis 中
cp -p redis-6.2.1/redis.conf ./redis-6.2.6/
cp -p redis-6.2.1/dump.rdb ./redis-6.2.6/src/

4、启动新版redis

cd redis-6.2.6/src
./redis-server /root/redis-6.2.6/redis.conf
#查看redis 是否启动
ps -ef |grep redis

#查看redis 版本
#可以直接看
redis-cli -v

#也可以进redis 中查看
redis-cli -h localhost -p 16379 -a 123123
info
#这里连接时可以直接输入密码,也可以连接后输入密码
127.0.0.1:6379> auth 123123
127.0.0.1:6379> info

以上是关于linux上redis升级(将 Redis 3.0.7 升级到 5.0.0版本)的主要内容,如果未能解决你的问题,请参考以下文章

linux安装redis

redis 官网没有windows

Redis集群批量操作

Redis的安装

Redis遇到的坑

Linux安装Redis