一聚教程网:一个值得你收藏的教程网站

热门教程

Linux中怎么设置Redis开机启动

时间:2022-06-30 16:11:14 编辑:袖梨 来源:一聚教程网

一、CentOS 7.0系统下的设置方法

假设Redis已经安装,版本3.2.4

#cd redis-3.2.4

#mkdir /etc/redis

#cp redis.conf /etc/redis/6379.conf

#cp utils/redis_init_script /etc/init.d/redis

#chmod a+x /etc/init.d/redis

#cp src/redis-server /usr/local/bin/

#cp src/redis-cli /usr/local/bin/

#vim /etc/init.d/redis

在脚本文件添加 #chkconfig: 2345 80 90

否则会出现 “redis服务不支持chkconfig”的错误提示

#!/bin/sh

#chkconfig: 2345 80 90

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

# as it does use of the /proc filesystem.

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

注册事件,开机启动

#chkconfig redis on

启动服务

#service redis start

查看服务是否启动

#lsof -i:6379

二、Debian 8.0设置方法

步骤与上面类似,不过Debian 用update-rc.d (或insserv)代替chkconfig

脚本文件描述也不一样。

假设Redis已经安装,版本3.2.4

#cd redis-3.2.4

#mkdir /etc/redis

#cp redis.conf /etc/redis/6379.conf

#cp utils/redis_init_script /etc/init.d/redis

#chmod a+x /etc/init.d/redis

#cp src/redis-server /usr/local/bin/

#cp src/redis-cli /usr/local/bin/

#vim /etc/init.d/redis

在脚本文件添加

### BEGIN INIT INFO

# Provides: redis6379

# Required-Start: $local_fs $network

# Required-Stop: $local_fs

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: redis6379

# Description: penavico redis 6379

### END INIT INFO

否则会出现 “ insserv: warning: script ‘redis6379′ missing LSB tags and overrides”的错误提示

#!/bin/sh

#

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

# as it does use of the /proc filesystem.

### BEGIN INIT INFO

# Provides: redis6379

# Required-Start: $local_fs $network

# Required-Stop: $local_fs

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: redis6379

# Description: penavico redis 6379

### END INIT INFO

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

注册事件,开机启动

#update-rc.d redisd defaults

启动服务

#service redis start

查看服务是否启动

#lsof -i:6379

开机启动以后,默认的配置文件位置:/etc/redis/6379.conf

热门栏目