下载地址:http://redis.io/download,下载最新稳定版本
目前稳定版本是6.0.9 下载地址 https://download.redis.io/releases/redis-6.0.9.tar.gz
wget https://download.redis.io/releases/redis-6.0.9.tar.gz
tar xzf redis-6.0.9.tar.gz
cd redis-6.0.9
make
此处会报错make[1]: *** [server.o] Error 1
image.png
有可能是gcc版本过低,可通过gcc -v查看
image.png
redis需要gcc 5.3 以上,所以需要手动升级gcc
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils

#临时修改gcc版本
scl enable devtoolset-9 bash
#永久修改gcc版本
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
再次运行make,提示如下
image.png
建议我们运行make test ,那我们就运行一下make test看下报错
image.png
提示我们tcl版本需要8.5以上
于是执行如下命令安装tcl 8.5
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/tcl-8.5.13-8.el7.x86_64.rpm
rpm -ivh tcl-8.5.13-8.el7.x86_64.rpm
安装后已就报错如下
image.png
经过反复查询验证,最后使用参考资料(https://blog.csdn.net/ok532655221/article/details/106826822)的方式,进入报错文件tests/integration/replication.tcl修改wait_for_condition 的值为100 1000,然后重新执行make test就通过运行了
vim tests/integration/replication.tcl
test {Slave enters handshake} {
            wait_for_condition 100 1000 {
                [string match *handshake* [$slave role]]
            } else {
                fail "Replica does not enter handshake state"
            }
        }

image.png

执行完 make 命令后,redis-6.0.9 的 src 目录下会出现编译后的 redis 服务程序 redis-server,还有用于测试的客户端程序 redis-cli

下面启动 redis 服务
cd src
./redis-server
image.png
注意这种方式启动 redis 使用的是默认配置。也可以通过启动参数告诉 redis 使用指定配置文件使用下面命令启动。
cd src
./redis-server ../redis.conf
redis.conf 是一个默认的配置文件。我们可以根据需要使用自己的配置文件。
启动 redis 服务进程后,就可以使用测试客户端程序 redis-cli 和 redis 服务交互了。
cd src
./redis-cli
127.0.0.1:6379> set foo bar
OK
127.0.0.1:6379> get foo
"bar"

注:如果使用ctrl+z将redis-server给stop的话,会出现cli进不去的现象

image.png

这种情况是因为redis-server被stop了

image.png

针对这种情况,先结束掉redis的进程 然后进行如下操作:

解决方法一:开启server后,开辟另一个终端redis-cli即可
解决方法二:修改redis.conf文件将daemonize改成yes,并且通过redis.conf即可。
 ./redis-server ../redis.conf

image.png

然后就可以通过redis-cli连接了

image.png

image.png