目录
Q:server.c:xxxx:xx: error: ****** has no member named ******
1. 下载安装 Redis 6.0
点击进入 Redis 官网下载,当前最新的稳定版本为 Redis 6.0.4
// 下载 Redis
wget http://download.redis.io/releases/redis-6.0.4.tar.gz
// 解压
tar -zxvf redis-6.0.4.tar.gz
// 编译安装 (如安装失败请查文末的解决方法)
make && make install PREFIX=/usr/local/redis6
// 复制一份配置文件到 redis 安装目录
cp redis.conf /usr/local/redis6
2. 启动并测试
进入 Redis 的安装目录 / bin 目录下,内容如下所示
启动 Redis
下面我们打开一个新的 sheel 窗口,并启动 Redis 客户端,使用 get 、set 测试
Redis 客户端可以正常操作,安装成功
既然安装了 Redis 6.0 ,我想你还需要一篇 Redis 6.0 权限控制命令 ACLs 详解
3. 安装错误及解决办法
Q;cc: command not found
A:yum -y install gcc
Q:server.c:xxxx:xx: error: ****** has no member named ******
A:gcc 版本低于 5.3 ,需要升级 (请按如下方式升级)
查看当前 gcc 版本
[root@LiaNgV2 redis-6.0.4]# 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)
默认的 gcc 版本为:4.8.5 < 5.3
升级 gcc 到 9 +
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
// 临时有效,退出 shell 或重启会恢复原 gcc 版本
scl enable devtoolset-9 bash
// 长期有效
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
重新进入 shell,查看 gcc 版本
[root@LiaNgV2 ~]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/opt/rh/devtoolset-9/root/usr/libexec/gcc/x86_64-redhat-linux/9/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/rh/devtoolset-9/root/usr --mandir=/opt/rh/devtoolset-9/root/usr/share/man --infodir=/opt/rh/devtoolset-9/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-9.1.1-20190605/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 9.1.1 20190605 (Red Hat 9.1.1-2) (GCC)