Centos7安装升级最新版Redis7.0.10 避坑攻略

1、前言

今天帮朋友处理了一个服务器的漏洞修复,过程遇到了一些坑,特记录分享给大家,朋友原服务器默认yum源安装的gcc 是4.8.5 ,默认安装redis是 3.2.12,今天被机构检测发现了一些安全问题(下图),其实这些问题在redis后续版本中均已修复,最终决定直接升级最新版redis,即Redis7.0.10
在这里插入图片描述

2、升级GCC

升级新版redis需要更高级的gcc支持,这里我们就选择升级gcc9

#更新源
yum update
#安装scl源
yum install -y centos-release-scl
#安装gcc工具链
yum install -y devtoolset-9-toolchain
#临时覆盖旧版本gcc引用,针对本次会话有效
scl enable devtoolset-9 bash
#为了避免需要再次激活devtoolset-9使其长期有效
echo "source/opt/rh/devtoolset-9/enable">>/etc/profile
#查看gcc版本
gcc -v

出现gcc9版本号则升级成功
在这里插入图片描述

3、下载编译Redis

如果已经使用yum安装了低版本redis的,可以先删除redis

yum remove redis

登录Redis官网下载页 https://redis.io/download/#redis-downloads 下拉找到最新稳定版的固定连接
在这里插入图片描述
这里顺便附上官方各安装类型文档 https://redis.io/docs/getting-started/ 方便大家查阅

#创建下载包存放目录(自行存放自己想要的目录)
mkdir -p /usr/tools/redis
#切换进入目录
cd /usr/tools/redis/
#使用wget下载压缩包
wget https://download.redis.io/redis-stable.tar.gz
#解压到 /usr/local/目录,解压出来的文件夹为 redis-stable
tar -xzf redis-stable.tar.gz -C /usr/local/
#切换进入目录
cd /usr/local/redis-stable
#编译
make install

按照官方说明 make命令编译 Redis 源码,会在 redis-stable/src 目录下生成 redis-server 和 redis-cli 可执行文件,如果需要安装到/usr/local/bin则运行make install(实际上该命令即会在src生成同时也在/usr/local/bin生成)

4、配置Redis

按照官方文档分别构建Redis配置文件目录和数据目录
在这里插入图片描述
构建目录如下

mkdir /etc/redis
mkdir /var/redis

配置开机启动脚本redis_6379

#切换目录
cd /usr/local/redis-stable/
cp utils/redis_init_script /etc/init.d/redis_6379
#复制配置文件至/etc/redis/
cp redis.conf /etc/redis/6379.conf
#在/var/redis中创建一个目录,作为Redis实例的数据和工作目录
mkdir /var/redis/6379

修改6379.conf配置文件

vim /etc/redis/6379.conf

由于redis配置文件内容比较多,可以在非编辑模式下输入 ngg 跳转到第n行(n代表行号),例如跳转到第100行就 100gg

  • 修改绑定:第87行 (87gg)
# 原 bind 127.0.0.1 -::1 修改为
bind 0.0.0.0
#很多人会误解这个bind是配置允许外部访问的IP地址
#其实不然0.0.0.0 在服务器的环境中,指的就是服务器上所有的ipv4地址
#如果机器上有2个ip 192.168.1.18 和 100.1.2.25
#redis在配置中,如果配置监听在 0.0.0.0 这个地址上,这2个ip地址都是能够连接到这个redis服务的包括127.0.0.1
  • 开启守护进程:第309行 (309gg)
daemonize yes
  • 设置日志目录:第354行 (354gg)
logfile /var/log/redis_6379.log
  • 修改数据目录:第504行 (504gg)
dir /var/redis/6379
  • 修改密码:第1034行 (1034gg)
#默认无密码,设置密码关闭redis的时候会报错见下文讲解
requirepass 你的密码

设置开机启动
按照官方的文档操作,发现在Centos系统下会报错,其它Linux可以采用,如Ubuntu

sudo update-rc.d redis_6379 defaults

在这里插入图片描述

Centos采用这个方法

#rc.local 文件里写入执行脚本的指令
echo "sudo /etc/init.d/redis_6379 start &" >> /etc/rc.local
#设置权限
chmod +x /etc/rc.d/rc.local

5、启动Redis

#启动
sudo /etc/init.d/redis_6379 start
#关闭
sudo /etc/init.d/redis_6379 stop

在上述redis配置中博主提到了如果设置了密码后stop会报错出现:

(error) NOAUTH Authentication required.
Waiting for Redis to shutdown
Waiting for Redis to shutdown
Waiting for Redis to shutdown

另外还有注意的:当使用杀进程的时候强制关闭redis 如:使用 kill -9 pid 的方式再次启动会报pid文件存在的错误,使用 rm -rf 命令强制删除redis_6379.pid

rm -rf /var/run/redis_6379.pid

如果你设置了密码可以修改启动脚本文件进行解决
在这里插入图片描述
第38行

vim /etc/init.d/redis_6379
#修改为
$CLIEXEC -p $REDISPORT -a 你的密码 shutdown

6、总结

以上就是升级GCC + 最新稳定版Redis7.0.10的全部记录,分享出来也希望能够帮助到大家~ 如果你觉得有用请点点赞、加加关注,谢谢!

  • 20
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 15
    评论
要在Centos7安装PHP最新版,有两种方法可供选择。第一种方法是通过yum进行简单安装,第二种方法是进行编译安装。 简单安装PHP最新版的方法如下: 1. 首先,确保你的Centos7系统已经安装了Apache2(也称为httpd)。如果还没有安装,可以使用以下命令进行安装: ``` yum install httpd ``` 2. 安装PHP7的最新版本。使用以下命令进行安装: ``` yum install php ``` 3. 安装完成后,重新启动Apache2服务以使PHP生效: ``` service httpd restart ``` 编译安装PHP最新版的方法如下: 1. 首先,确保你的Centos7系统已经安装gccgcc-c++编译器。如果还没有安装,可以使用以下命令进行安装: ``` yum install gcc gcc-c++ ``` 2. 下载PHP最新版的源代码包。你可以从PHP官方网站上下载最新版本的源代码。 3. 解压下载的源代码包,并进入解压后的目录。 4. 使用以下命令进行配置: ``` ./configure ``` 5. 执行以下命令进行编译和安装: ``` make make install ``` 6. 安装完成后,修改Apache2的配置文件,将PHP模块加载到Apache2中。 7. 重新启动Apache2服务以使PHP生效。 这两种方法都可以让你在Centos7安装最新版的PHP。简单安装方法更为方便快捷,而编译安装方法可以提供更多的自定义选项和灵活性。根据你的需求和技术水平,选择适合你的方法进行安装即可。<span class="em">1</span><span class="em">2</span><span class="em">3</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Micro麦可乐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值