Redis多实例启动脚本
程序员文章站
2022-06-14 10:57:57
...
1,修改redis.conf 设置redis后台启动 daemonize yes 2,编写脚本 vi /etc/init.d/redis #!/bin/sh#chkconfig: 2345 10 90#description: Startup and stop script for RedisPATH=/usr/local/bin:/sbin:/usr/bin:/binREDISPORT_1=6380REDISPORT_2=6381REDISPO
1,修改redis.conf
设置redis后台启动
daemonize yes
2,编写脚本
vi /etc/init.d/redis
#!/bin/sh #chkconfig: 2345 10 90 #description: Startup and stop script for Redis PATH=/usr/local/bin:/sbin:/usr/bin:/bin REDISPORT_1=6380 REDISPORT_2=6381 REDISPORT_3=6382 REDISPORT_4=6383 REDISPORT_5=6384 REDISPORT_6=6385 REDISPORTS=($REDISPORT_1 $REDISPORT_2 $REDISPORT_3 $REDISPORT_4 $REDISPORT_5 $REDISPORT_6) EXEC=/usr/local/redis/bin/redis-server REDIS_CLI=/usr/local/redis/bin/redis-cli PIDFILE_1=/var/run/redis_6380.pid PIDFILE_2=/var/run/redis_6381.pid PIDFILE_3=/var/run/redis_6382.pid PIDFILE_4=/var/run/redis_6383.pid PIDFILE_5=/var/run/redis_6384.pid PIDFILE_6=/var/run/redis_6385.pid PIDFILES=($PIDFILE_1 $PIDFILE_2 $PIDFILE_3 $PIDFILE_4 $PIDFILE_5 $PIDFILE_6) CONF_1=/usr/local/redis/etc/redis_6380.conf CONF_2=/usr/local/redis/etc/redis_6381.conf CONF_3=/usr/local/redis/etc/redis_6382.conf CONF_4=/usr/local/redis/etc/redis_6383.conf CONF_5=/usr/local/redis/etc/redis_6384.conf CONF_6=/usr/local/redis/etc/redis_6385.conf CONFS=($CONF_1 $CONF_2 $CONF_3 $CONF_4 $CONF_5 $CONF_6) case "$1" in start) i=0 for PID in ${PIDFILES[@]} do if [ -e $PID ] then echo "$PID has exist, process is running" else echo "$PID Start ..." $EXEC ${CONFS[i]} fi if [ "$?" == "0" ] then echo "$PID is running" else echo "$PID is failed to start" fi let i++ done ;; stop) i=0 for PID in ${PIDFILES[@]} do if [ ! -e $PID ] then echo "$PID does not exist, process is not running" else echo "$PID Stoping ..." $REDIS_CLI -p ${REDISPORTS[i]} SHUTDOWN sleep 2 while [ -e $PID ] do echo "Waiting for Redis to shutdown ..." sleep 1 done echo "$PID stopped" fi let i++ done ;; restart) ${0} stop ${0} start ;; *) echo "Usage: /etc/init.d/redis {start|stop|restart}" >&2 exit 1 esac1,$1:执行命令的第一个参数,例如/etc/init.d/redis start,start就是第一个参数
2,${0}:文件所在路径,例如文件所在路径为/etc/init.d/redis,那么${0}的值就是该路径
3,脚本要放在 /etc/init.d/ 下,不然执行server redis ... 的命令会提示找不到redis
3,添加执行权限
chmod +x /etc/init.d/redis
service redis start service redis stopservice redis restart4,设置开机启动
chkconfig redis onchkconfig --add redis
上一篇: Go 语言 接口(Interface)
下一篇: php中r rn t的区别示例介绍