Centos7 下 redis 6 的编译安装

 redis6 相比以前的版本,做了很大的改变,比如再也不是单线程了,而是多线程了。本文记录下在centos 下编译安装 redis6的过程.

下载redis 6

wget http://download.redis.io/releases/redis-6.0.6.tar.gz

编译redis 6

编译前的准备

查看 centos gcc 的版本

[root@bigdata114 ~]# gcc -v
 Using built-in specs.
 COLLECT_GCC=gcc
 COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
 Target: x86_64-redhat-linux
 Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-linker-hash-style=gnu --enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto --enable-plugin --enable-initfini-array --disable-libgcj --with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install --with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
 Thread model: posix
 gcc version 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC)

可以看到,版本为 4.8.5, 但这个版本用来编译redis6 就太低了,需要升级GCC.

如果没有安装GCC 的可以先安装,如果已经安装了,就不需要再次安装了。安装之后再升级, 安装命令如下:

yum install gcc cmake -y

安装scl

yum install -y centos-release-scl

升级, 比如需要安装 gcc 8 这个版本, 用如下命令安装

yum install -y devtoolset-8-gcc devtoolset-8-gcc-c++

等待安装完毕, centos 中是可以多个gcc 共存的。但需要临时做一些配置, 命令如下

scl enable devtoolset-8 bash
source /opt/rh/devtoolset-8/enable

执行完上面两步之后,再次用gcc -v 命令查看,版本变了 8.3.1 当然也可以直接把路径添加到系统PATH中去,但个人觉得不是很好。通过命令临时改变需要用到的gcc 版本,不改动系统的,更符合自己的需要.

[root@bigdata114 resources]# gcc -v
 Using built-in specs.
 COLLECT_GCC=gcc
 COLLECT_LTO_WRAPPER=/opt/rh/devtoolset-8/root/usr/libexec/gcc/x86_64-redhat-linux/8/lto-wrapper
 Target: x86_64-redhat-linux
 Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/rh/devtoolset-8/root/usr --mandir=/opt/rh/devtoolset-8/root/usr/share/man --infodir=/opt/rh/devtoolset-8/root/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --with-linker-hash-style=gnu --with-default-libstdcxx-abi=gcc4-compatible --enable-plugin --enable-initfini-array --with-isl=/builddir/build/BUILD/gcc-8.3.1-20190311/obj-x86_64-redhat-linux/isl-install --disable-libmpx --enable-gnu-indirect-function --with-tune=generic --with-arch_32=x86-64 --build=x86_64-redhat-linux
 Thread model: posix
 gcc version 8.3.1 20190311 (Red Hat 8.3.1-3) (GCC)

编译Redis 6

解压redis, 并进入到解压目录中, 输入 make 命令, 进行编译

 

 

然后进入 redis 解压目录的 src 目录中,可以看到 可执行文件被编译成功

 

 

测试Redis 是否正常工作

运行命令

src/redis-server

 

同样客户端也可以通过命令 src/rdis-cli 来测试.

 


上一篇: Springboot 2.3 与swagger 3.0 集成
下一篇: 老大,能不能加个更改昵称的功能?
 评论 ( What Do You Think )
名称
邮箱
网址
评论
验证
   
 

 


  • 微信公众号

  • 我的微信

站点声明:

1、一号门博客CMS,由Python, MySQL, Nginx, Wsgi 强力驱动

2、部分文章来源于互联网, 若有侵权, 联系邮箱:summer@yihaomen.com, 同时欢迎大家注册用户,主动发布文章.

3、鄂ICP备14001754号-3, 鄂公网安备 42280202422812号