服务器上redis保活的一个脚本

#!/bin/bash

#检查8080端口是否被占用,如果占用输出1,如果没有被占用输入0
pIDa=`/usr/sbin/lsof -i :6379|grep -v "PID" | awk '{print $2}'`
pIDa1=`/usr/sbin/lsof -i :6380|grep -v "PID1" | awk '{print $2}'`
pIDa2=`/usr/sbin/lsof -i :6381|grep -v "PID2" | awk '{print $2}'`

redisd6379Url='/etc/init.d/redisd6379 start'
redisd6380Url='/etc/init.d/redisd6380 start'
redisd6381Url='/etc/init.d/redisd6381 start'

#每隔30分钟输出一句话
while true
do
echo 每隔30分钟检查一次

#判断 redis 6379 是否停止运行
echo $pIDa
if [ "$pIDa" != "" ];
then
    echo "redis 6379 已启动"
else
    echo "redis 6379 没有启动,重新启动"
    $redisd6379Url
fi

#判断 redis 6380 是否停止运行
echo $pIDa1
if [ "$pIDa1" != "" ];
then
   echo "redis 6380 已启动"
else
   echo "redis 6380 没有启动,重新启动"
   $redisd6380Url
fi

#判断 redis 6381 是否停止运行
echo $pIDa2
if [ "$pIDa2" != "" ];
then
   echo "redis 6381 已启动"
else
   echo "redis 6381 没有启动,重新启动"
   $redisd6381Url
fi

#每隔30分钟检查一次
sleep 1800
done

猜你喜欢

转载自blog.csdn.net/m0_38044453/article/details/81035625