CentOS7下安装Redis6.0.9
- Redis6.0的安装需要使用gcc9版本,不然在make时会报找不到xxx成员。
server.c:5343:176: 错误:‘struct redisServer’没有名为‘maxmemory’的成员
- 此时就要使用到centos-release-scl软件集了
Centos-release-scl软件集的使用
-
作用:CentOS7 gcc版本为4.8.5,Red Hat为了软件的稳定和版本支持,yum上版本也是4.8.5,所以无法使用yum的方式进行gcc的软件升级,所以使用scl。
-
scl:(Software Collections)软件集,是为了给RHEL/CentOS用户提供一种以方便,安全地安装、使用应用程序和运行时环境的多个版本方式,同时避免吧系统搞乱。
-
-
安装Centos-release-scl
-
通过yum安装centos-release-scl
# 安装 yum install centos-release-scl -y
-
-
使用Centos-release-scl
- 列出scl有哪些源可以使用
yum list all --enablerepo='centos-sclo-rh' # 查看scl中gcc版本 yum list all --enablerepo='centos-sclo-rh'|grep gcc ## 返回结果 devtoolset-9-gcc.x86_64 9.3.1-2.el7 centos-sclo-rh devtoolset-9-gcc-c++.x86_64 9.3.1-2.el7 centos-sclo-rh devtoolset-9-gcc-gdb-plugin.x86_64 9.3.1-2.el7 centos-sclo-rh devtoolset-9-gcc-gfortran.x86_64 9.3.1-2.el7 centos-sclo-rh devtoolset-9-gcc-plugin-devel.x86_64 9.3.1-2.el7 centos-sclo-rh devtoolset-9-libgccjit.x86_64 9.3.1-2.el7 centos-sclo-rh devtoolset-9-libgccjit-devel.x86_64 9.3.1-2.el7 centos-sclo-rh devtoolset-9-libgccjit-docs.x86_64
- 使用centos-release-scl安装更高版本的gcc,其他版本同理
yum install devtoolset-9-gcc
- 切换版本(切换版本后,退出bash或系统重启,将回到系统原本的版本)
- 关键字:scl enable 要切换的软件 bash
# 切换gcc版本,将gcc切换成gcc9 # 使用scl创建一个scl包的bash会话 scl enable devtoolset-9 bash
- 退出当前版本
- 关键字:exit
[root@localhost redis-6.0.9]# exit
- scl其他常用的命令
scl -l 或 scl --list scl -h 或 scl --help
前期准备完成,接下来开始安装redis6.0
-
第一步:解压Redis压缩包
# 解压 tar -xf redis-6.0.9.tar.gz
-
第二步:进入devtoolset-9的bash中
scl enable devtoolset-9 bash
-
第三步:编译安装
cd /redis-6.0.9 # 编译安装 make echo $? # 检查编译是否有报错,返回0表示没有,其他返回值都是表示编译有错误 make install # 编译没问题 安装
-
第四步:启动redis
# 退出devtoolset-9的bash exit cd /redis-6.0.9/src ./redis-server
-
出现redis图标后表示安装成功了