redis在centos7 自启动,并用service启动或者关闭

liyuzhao7年前学习记录2760
1.为了让redis-server能在系统启动时自动运行,需要将redis服务作为守护进程(daemon)来运行,我们回/usr/local/cluster/7000/目录中找到一个redis.conf的文件,这个文件是redis服务运行时加载的配置,我们先观察一下其中的内容

[root@192 7000]# vi redis.conf
输入/daemonize

此文件内容非常长,但是大部分是注释,我们重点关注其中的几个设置daemonize和pidfile:
其中daemonize默认值是false,pidfile默认值是pidfile /var/run/redis_6379.pid
第一个表示是否daemon化,显然我们要把它改成daemonize yes;
第二个表示当服务以守护进程方式运行时,redis默认会把pid写入/var/run/redis_6379.pid文件,服务运行中该文件就存在,服务一旦停止该文件就自动删除,因而可以用来判断redis是否正在运行。
 保存后退出。
有了基本配置,redis还需要有一个管理启动、关闭、重启的一个脚本。redis源码里其实已经提供了一个初始化脚本,
位值在/usr/redis/utils/redis_init_script。
我们来看看这个脚本做了些什么:

#!/bin/sh#
    REDISPORT=6379
    EXEC=/usr/local/bin/redis-server
    CLIEXEC=/usr/local/bin/redis-cli
    
    PIDFILE=/var/run/redis_${REDISPORT}.pid
    CONF="/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下面了。
我的脚本

***
2.设置启动文件配置,进入7000的根目录
cd /usr/local/cluster/7000
mkdir /etc/redis 
cp redis.conf /etc/redis/7000.conf 
***
3.将启动脚本复制到/etc/init.d目录下,本例将启动脚本命名为redis (复制 /usr/local/cluster/7000/utils/redis_init_script文件)
cp redis_init_script /etc/init.d/redis 
按照第一点说的修改redis文件、注意增加了chkconfig和description两行 不然会提示 服务 redisd 不支持 chkconfig ?
*** 
#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database

REDISPORT=7000
EXEC=/usr/local/cluster/7000/src/redis-server
CLIEXEC=/usr/local/cluster/7000/src/redis-cli

PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/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)
编辑完保存就OK了
***
4.#设置为开机自启动服务器 
chkconfig redis on 
#打开服务 
service redis start 
#关闭服务 
service redis stop

***
5.重启 reboot
执行ps指令,查看redis 7000端口已经启动

以上文章是复制:https://www.cnblogs.com/ANCAN-RAY/p/7941425.html,如果有需要删除,请联系我删除

相关文章

数据库的for each row定义

在mysql中,for each row 是定义行级触发器的语句,如果不写是错误的,因为mysql还没有支持语句触发器。在oracle中,如果不写默认为语句触发器,就是不管执行多少次,都只触发一次语句...

centos7 下安装php扩展redis

最近一直在学习并发、tcp\ip协议等等,然后发现了redis很好用,就打算去实用一下,我打算实验一下,用redis查询15W条数据的时间,服务器的配置是:cpu:1核带宽:1M内存:1G废话不多说,...

探索sql合并插入+事务性能问题

探索sql合并插入+事务性能问题准备:1:为了方便默认用thinkphp5框架来测试,直接下载官方的thinkphp5框架,部署到本地的环境,开启debug调试来追踪sql语句。2:新建一个表为tes...

探讨mysql编程形参的in,out,inout型

探讨mysql编程形参的in,out,inout型

mysql的形参可以传入数值,也可以传入变量,下面来探讨一下:先探讨in和out型:delimiter $create procedure p2(in a int , out b int)begind...

session和cookie原理透彻分析

一直以来对session和cookie这个两个的原来有点不明确。上次去公司面试的时候就有这个面试题,心里一直都想搞清楚这两个的原理,但是一直没有好的理解,所幸今晚翻了以前看十八哥的视频,非常透彻的讲解...

centos7.4 安装lnmp

centos7.4 安装lnmp

最近购买了两天云服务器,所以环境需要重新配置下。采用php7.2+nginx+mysql5.7 .安装步骤:yum的安装?1yum updateyum安装nginx安装nginx最新源?12yum l...

评论列表

直播APP直播APP
2024-07-30 07:32:18

识别码:txyohr89561JR-在阿拉斯加寻爱记http://www.yymsw.com

11
2024-08-07 22:22:06

识别码:spgwib39281GP-这游戏真不错!http://www.a5km.com/yxgl/jdqs/28711.html

11111
2024-08-07 22:24:03

识别码:knqcfd71426MK-这游戏真不错!http://www.a5km.com/yxgl/jdqs/28586.html

1111111
2024-08-08 00:30:30

识别码:secqgz20495BD-这游戏真不错!http://www.a5km.com/yxgl/jdqs/29082.html

111111111
2024-08-08 00:31:47

识别码:cxveop47023YJ-这游戏真不错!http://www.a5km.com/yxgl/jdqs/28536.html

1111111111
2024-08-08 00:32:26

识别码:xkbizt08654EG-这游戏真不错!http://www.a5km.com/yxgl/jdqs/28585.html

11111111111
2024-08-08 00:33:10

识别码:jxonzi51026JW-这游戏真不错!http://www.dnf70.com/2271.html

111111111111
2024-08-08 00:33:54

识别码:jewagu61450NB-这游戏真不错!http://www.a5km.com/yxgl/jdqs/27697.html

1111111111111
2024-08-08 00:34:37

识别码:sbvpmz95704DY-这游戏真不错!http://www.a5km.com/yxgl/jdqs/27735.html

11111111111111
2024-08-08 00:35:21

识别码:bkeitg78491KA-这游戏真不错!http://www.a5km.com/yxgl/jdqs/28403.html

111111111111111
2024-08-08 00:36:05

识别码:vrxfug73465DK-这游戏真不错!http://www.a5km.com/yxgl/jdqs/28739.html

1111
2024-08-08 10:01:18

识别码:jwhxrd76182NX-这游戏真不错!http://www.a5km.com/yxgl/jdqs/27916.html

1
2024-08-18 13:26:44

1530716298@qq.comhttp://www.3553km.com识别码:eqtfkz86794UB-这游戏真不错!http://www.3553km.com

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。