文章目录

  • redia 配置成服务
  • 修改内容
  • 配置成服务
  • 使用
  • 注意点
  • 问题


redia 配置成服务

  • 把redis做成服务,方便管理 redis目录中已经有初始化脚本,只需要该一下需要改的内容即可
  • 脚本路径
/redis-4.0.1/utils/redis_init_script

修改内容

#!/bin/sh

#

# Simple Redis init.d script conceived to work on Linux systems


# as it does use of the /proc filesystem.


REDISPORT="$2"
EXEC=/opt/redis/bin/redis-server
CLIEXEC=/opt/redis/bin/redis-cli

# reid PID 所在目录

PIDFILE=/var/run/redis_${REDISPORT}.pid

# redis 配置文件所在目录

CONF="/opt/redis/Master-slave/${REDISPORT}.conf"

case "$1" in
   start)
       if [ -f $PIDFILE ]
       then
               echo "准备重启"
               $EXEC $CONF
       else
               echo "启动redis"
               $EXEC $CONF
       fi
       ;;
   stop)
       if [ ! -f $PIDFILE ]
       then
               echo "$PIDFILE does not exist, process is not running"
       else   
               # 获取进程ID
               PID=$(cat $PIDFILE)
               echo "准备停止"
               $CLIEXEC -p $REDISPORT shutdown
               while [ -x /proc/${PID} ]
               do
                   echo "Waiting for Redis to shutdown ..."
                   sleep 1
               done
               echo "Redis stopped"
       fi
       ;;

   starts)
   startsM=$(ps axo pid,cmd | grep edis-server  | grep -v grep | wc -l)
   if [ ${startsM} -eq 1 ];
   then
             echo "程序已运行"
             exit 1
   else
       echo "程序尚未运行"
       fi
   ;;
   restart)
       service redis stop $REDISPORT && service redis start $REDISPORT
       ;;
   *)
    echo "启动命令:start 停止命令:stop 状态:starts 重启:restart"
       ;;
esac

配置成服务

复制到系统命令中,并且修改名称,这样好记忆点。。。

cp redis_init_script /etc/init.d/redis

修改权限

#修改读写权限
chmod +x /etc/init.d/redis

使用

service redis start ${配置文件名称}
service redis stop ${配置文件名称}

注意点

这里需要注意的是配置文件所在目录和PID所在目录要配置正确!!!
其中
配置文件所在目录

是在你安装 redis 的时候指定的目录...

PID所在目录是在 redis 配置文件中配置的

#....
pidfile "/var/run/redis_6379.pid"
#....

问题

关于重启的我是 先stop 然后在 start … 如果有更好的方式请告诉我…