CentOS 7源码安装Redis 6.0及自启动

Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。当下非常流行,使用非常广泛,这篇文章记录下CentOS 7源码安装Redis服务的方法。

安装Redis

先执行下面的命令,安装一大堆依赖:

#安装依赖
yum -y install cpp binutils glibc glibc-kernheaders glibc-common glibc-devel gcc make
#升级gcc
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash

写这篇文章的时候,Redis最新稳定版为6.0,随着时间推移,版本会发生变化,请前往Redis官方:https://redis.io/download下载最新版本。

#下载Redis
wget https://download.redis.io/releases/redis-6.0.9.tar.gz
#解压Redis
tar xzf redis-6.0.9.tar.gz
#进入Redis目录
cd redis-6.0.9
#编译
make

编译成功后,Redis服务二进制文件位于src/redis-server,直接输入这个路径即可运行Redis服务,不过运行后是在前台运行,一旦结束或窗口关闭,Redis服务也随之停止。

运行Redis

为了方便后期管理与维护,可以将Redis src放到特定目录下,比如mv src/ /usr/local/redis

同时可以将redis-6.0.9目录下的redis.conf也复制一份:

cp redis.conf /etc

默认情况下,Redis是前台运行,如果需要后台运行,需要修改redis.conf配置文件,将

daemonize no

修改为:

daemonize yes

然后输入命令:/usr/local/redis/redis-server /etc/redis.conf重新启动Redis服务,这个时候就是保持后台运行了,通过ps命令可看到进程:

[root@hecs-centos-7 ~]# ps -ef|grep 'redis'
root     10217     1  0 22:00 ?        00:00:00 /usr/local/redis/redis-server 127.0.0.1:6379

设置环境变量

每次都输入Redis绝对路径来运行,难免还是有些不方便,我们可以将Redis路径加入到Linux环境变量,在/etc/profile这个文件底部追加:

export PATH=$PATH:/usr/local/redis

再输入命令source /etc/profile使其生效,这样我们就可以直接执行redis命令,而不用输入完整路径了。比如:

[root@hecs-centos-7 ~]# redis-server -v
Redis server v=6.0.9 sha=00000000:0 malloc=jemalloc-5.1.0 bits=64 build=ef93b08070de4db5

Redis客户端

通过上面编译后,Redis自带了一个命令行客户端redis-cli,输入下面的命令可检测Redis是否正常运行。

[root@hecs-centos-7 ~]# /usr/local/redis/redis-cli 
127.0.0.1:6379> ping
PONG

注册为Systemd服务

如果需要将Redis设置为开启启动,我们可以将redis注册为Systemd服务,方便日后管理。首先创建一个服务文件:vi /etc/systemd/system/redis.service,内容如下:

[Unit]
Description=Redis Server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/redis/redis-server /etc/redis.conf

[Install]
WantedBy=multi-user.target

然后输入systemctl daemon-reload重新加载服务,接下来就可以使用systemctl命令来管理了:

#启动redis
systemctl start redis
#停止redis
systemctl stop redis
#开机启动
systemctl enable redis