Redis是四个C完结的依赖内部存款和储蓄器、可长久化的键值对数据库,在布满式服务中常作为缓存服务。本篇将介绍在CentOS下什么样从零开头安装到布署运行服务。

一. 安装Redis

Redis的装置其实一定简单,推荐的方法是下载redis的源码,并在本机编写翻译后装置。

第三遍跻身主文件夹的下载目录下,施行wget下载源码

[zhxilin@localhost ~]$ cd 下载[zhxilin@localhost 下载]$ wget http://download.redis.io/redis-stable.tar.gz

接下去解压之后,移动到/usr/redis目录下

[zhxilin@localhost 下载]$ tar -zxvf redis-stable.tar.gz [zhxilin@localhost 下载]$ su mv redis-stable /usr/redis

接下来进入redis目录,实施make命令,编写翻译redis源码

[root@localhost 下载]# cd /usr/redis/[root@localhost redis]# make

编写翻译完结之后,在src目录下有2个重视次序生成,叁个是redis-server,另贰个是redis-cli;接着步向src目录,推行make
install,那个时候会把这个可执路程序拷贝到/usr/local/bin目录下,由于/usr/local/bin是在系统的情况变量$PATH下定义的,因此终端在自由地方就可以实行redis-server和redis-cli了。

[root@localhost redis]# cd src/[root@localhost src]# make install

现今停止安装redis的做事就到位了。

我们来探视编写翻译出来的多少个程序分别是为什么的:

redis-server:看名就能够知道意思,redis服务

redis-cli:redis
client,提供二个redis顾客端,以供连接到redis服务,进行增加和删除改查等操作

redis-sentinel:redis实例的督察管理、布告和实例失效备援服务

redis-benchmark:redis的性子测量检验工具

redis-check-aof:若以AOF格局产破壳日志,当意外爆发时用来火速修复

redis-check-rdb:若以LANDDB情势发生辰志,当意外发生时用来非常快修复

 

安装到位之后,运转redis-server,并运营redis-cli举办测验

[zhxilin@localhost ~]$ redis-server



[zhxilin@localhost ~]$ redis-cli 127.0.0.1:6379> PINGPONG127.0.0.1:6379> 

那样表明redis服务业已常见办事,若是redis服务未运营,则运营redis-cli时会报Could
not connect to Redis at 127.0.0.1:6379: Connection refused的怪诞。

 

二. 配置自运转

为了让redis-server能在系统运维时自动运转,须求将redis服务作为医护进度(daemon)来运作,大家回到/usr/redis/目录中找到二个redis.conf的文件,那么些文件是redis服务运维时加载的布置,我们先考查一下里边的从头到尾的经过

[zhxilin@localhost redis]$ vi redis.conf 

此文件内容非常短,可是好些个是注释,大家根本关怀此中的多少个设置daemonizepidfile

其间daemonize私下认可值是false,pidfile暗中认可值是pidfile
/var/run/redis_6379.pid

第2个代表是还是不是daemon化,分明大家要把它改成daemonize yes;

其次个象征当服务以守护进度方式运营时,redis私下认可会把pid写入/var/run/redis_6379.pid文件,服务运作中该公文就存在,服务后生可畏旦截止该公文就活动删除,因此能够用来剖断redis是或不是正在运营

封存后脱离。

有了骨干配置,redis还索要有叁个拘留运行、关闭、重启的贰个剧本。redis源码里实际早就提供了多个早先化脚本,地点在/usr/redis/utils/redis_init_script

小编们来看看那些本子做了些什么:

#!/bin/sh#REDISPORT=6379EXEC=/usr/local/bin/redis-serverCLIEXEC=/usr/local/bin/redis-cliPIDFILE=/var/run/redis_${REDISPORT}.pidCONF="/etc/redis/${REDISPORT}.conf"case "$1" in  start)    if [ -f $PIDFILE ]    then        echo "$PIDFILE exists, process is already running or crashed"    else        echo "Starting Redis server..."        $EXEC $CONF    fi    ;;  stop)    if [ ! -f $PIDFILE ]    then        echo "$PIDFILE does not exist, process is not running"    else        PID=$(cat $PIDFILE)        echo "Stopping ..."        $CLIEXEC -p $REDISPORT shutdown        while [ -x /proc/${PID} ]        do          echo "Waiting for Redis to shutdown ..."          sleep 1        done        echo "Redis stopped"    fi    ;;  *)    echo "Please use start or stop as first argument"    ;;esac

剧本中钦点了端口、server路线、cli路线、pidfile路径甚至conf路线,上述标黄之处都急需科学配置,多说一句,借使在设置时实践了make
install,那么这里的本子不需求做多大改观,因为make
install把server和cli都拷到/usr/local/bin下边了。

其余见到此间conf的不二秘籍,我们供给把redis目录下的redis.conf文件拷贝到/etc/redis/6379.conf

[root@localhost utils]# cd /etc[root@localhost etc]# mkdir redis[root@localhost etc]# cp /usr/redis/redis.conf /etc/redis/6379.conf 

接着将redis_init_script脚本拷贝到/etc/init.d/redisd

[root@localhost etc]# cp /usr/redis/utils/redis_init_script /etc/init.d/redisd 

在/etc/init.d下的本子都以足以在系统运转是半自动运转的劳动,而近期还缺三个系统运转时的配备:

[root@localhost zhxilin]# chkconfig redisd on

接下来就能够意识报了二个八花九裂:服务 redisd 不扶助 chkconfig ?

参照那篇文章, 那是因为大家需求在redis_init_script的开头加多少个小退换:“

#!/bin/sh
# chkconfig: 2345 90 10 
# description: Redis is a persistent key-value database

至于这里2345 90 10分头表示如何看头,请参见下边包车型大巴稿子链接。

封存完重新拷贝到/etc/init.d/redisd后,再运转chkconfig就完了了。

 

方方面面就绪之后,能够施行以下命令核查service是还是不是设置成功:

[root@localhost zhxilin]# service redisd start [root@localhost zhxilin]# service redisd stop

等价于

[root@localhost zhxilin]# /etc/init.d/redisd start [root@localhost zhxilin]# /etc/init.d/redisd stop

 

最后重启一下系统啊,踏入系统现在直接运转redis-cli核实redis服务是不是曾经自行运转了。

 

Ref:

网站地图xml地图