redis更新升级版本
注意,在看本教程前,请先自行备份配置文件以及数据。
如果持久化用的是rdb,备份.rdb文件,默认叫dump.rdb,如果你更改为其他名字,请自行查看配置,你的.rdb叫什么。
完成本教程后,把.rdb文件放入redis的启动目录即可。
不知道启动目录,就在redis-cil 命令行输入config get dir查看
如果持久化用的是aof,备份.aof文件,默认叫appendonly.aof
本教程写的时候是redis
版本是 redis-6.0.9
,如果高于此版本或者低于此版本,目录结果不一样,请安装redis-6.0.9
版本,把文中的 redis-X.X.X
替换为 redis-6.0.9
系统版本
Welcome to Ubuntu 18.04.3 LTS (GNU/Linux 4.15.0-64-generic x86_64)
使用 ping
命令 查看一下网络
ping www.baidu.com
网络没问题后使用 apt-get update
命令进行更新系统
apt-get update
如果是通过 apt-get install redis-server
方式安装的 redis
,可以输入 apt-get remove --purge redis-server
进行redis的卸载操作,输入此命令会问你是否卸载,输入 Y
确认卸载 redis
。
然后输入 redis-server -v
查看是否卸载完成,如果出现提示 Command 'redis-server' not found
说明卸载成功。
apt-get remove --purge redis-server # 会询问是否卸载,输入 Y 确认卸载 Y redis-server -v
检查是否安装了 gcc
,输入 gcc --version
进行查看是否安装了 gcc
,如果出现
Command ‘gcc’ not found,but can be installed with: apt install gcc
则说明没用安装 gcc
,需要输入 apt install gcc
进行安装。
然后再次输入 gcc --versio
查看是否安装成功
gcc --version # 如果出现 Command 'gcc' not found,but can be installed with: apt install gcc # 则说明没用安装 gcc ,需要输入 apt install gcc 进行安装 apt install gcc # 会问你是否继续安装,输入 Y 继续安装 Y
然后进入 /usr/local
目录下载 redis 最新安装压缩包,安装完成后输入 ls
可以查看到下载成功的文件 redis-x.x.x.taz.gz
。
去 redis官网 查看下载链接以及最新版本。
cd /usr/local # 进入 /usr/local 目录 wget https://download.redis.io/releases/redis-X.X.X.tar.gz # 下载最新的 redis ,此处我用 X.X.X 代替,因为 redis 是一直在更新的,所以你自己去官方查看 ls # 看到有 redis-x.x.x.taz.gz ,说明下载成功
然后解压 redis-x.x.x.taz.gz
,输入 ls 查看解压后的目录 redis-x.x.x
,然后进入 redis-x.x.x
目录,输入 make
进行编译,编译完成后 进入 src
目录,输入 make install
进行安装
tar xzf redis-x.x.x.taz.gz # 解压压缩包 ls # 查看解压后的目录 redis-x.x.x cd redis-x.x.x # 进入解压后的 redis-x.x.x 目录 make # 进行编译,此处时间可能会有点久 cd src && make install # 进入src 目录并进行安装 # 出现下面显示,说明安装成功 /bin/sh: 1: pkg-config: not foud cc Makefile.dep /bin/sh: 1: pkg-config: not foud Hint: It's a good idea to run 'make test' ;) INSTALL install INSTALL install INSTALL install INSTALL install INSTALL install
然后创建 /etc/redis
目录,把 /usr/local/redis-X.X.X/redis.conf 文件 复制到 /etc/redis/redis.conf
复制完成后,再把 /usr/local/redis-.X.X.X/utils/redis_init_script文 件复制到 /etc/init.d/redis
mkdir -p /etc/redis # 创建 /etc/redis 目录 cp /usr/local/redis-X.X.X/redis.conf /etc/redis/redis.conf # 把配置文件复制到 /etc/redis 目录下 cp /usr/local/redis-.X.X.X/utils/redis_init_script /etc/init.d/redis # 把启动脚本复制到 /etc/init.d 目录下,通常都以d结尾表示是后台自启动服务
然后进行 redis
配置文件设置
sed -i 's/daemonize no/daemonize yes/g' /etc/redis/redis.conf # 把 daemonize 设置为 yes ,因为redis 默认不开启守护进程模式 sed -i 's/bind 127.0.0.1/bind */g' /etc/redis/redis.conf # 如果要开启远程访问,就进行修改,* 代表任何地址都能访问,redis 默认是 # 只能本地访问,不过不想任何地址都能访问,就把 * 改成你的IP地址 sed -i 's/# requirepass foobared/requirepass 123456/g' /etc/redis.conf # 此命令是设置redis密码设置成123456,redis默认是没有密码的。 # 如果你不想设置密码,可以不输入此命令设置密码
最后设置开机自启redis以及启动redis服务
update-rc.d -f redis defaults # 设置开机执行脚本,也就是添加开机自启 service redis start # 启动redis服务 redis-server -v # 查看redis版本号,验证一下是否启动成功 ps -ef|grep redis # 也可以输入此命令查看redis是否启动成功
遇到的错误解决方案
如果遇到权限不足,切换成 root
用户或者命令加上 sudo
输入 redis-server
报错
bash: /usr/bin/redis-server: No such file or directory
解决方案
1、重启一下服务器。
2、或者建立软连接
ln -s /usr/bin/redis-server /usr/local/bin/redis-server
3、或者添加环境变量path
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持IT俱乐部。