宝塔面板PHP-Nginx-Mysql检测并自动重启Shell脚本代码分享

网站时不时会报错,或者Nginx或者PHP的,因此奇它论坛@老白我找了一些代码,用于宝塔面板PHP-Nginx-Mysql检测并自动重启Shell脚本代码分享,包括memcached和Redis(我虽然是WordPress,但理论上宝塔通用)。

1.设置教程

这个没啥好说的,宝塔面板——计划任务——Shell脚本,时间自行设定

2.Nginx自动重启脚本

检测并自动重启

pgrep -x nginx &> /dev/null
if [ $? -ne 0 ];then
/etc/init.d/nginx start 
echo "监控到Nginx已停止,已执行重启计划,时间: `date "+%Y-%m-%d %H:%M:%S"` " >> /www/Nginx_jiankong.log 
fi

自动重启

/etc/init.d/nginx restart

3.PHP自动重启脚本

检测并自动重启

pgrep -x php-fpm &> /dev/null
if [ $? -ne 0 ];then
/etc/init.d/php-fpm-{52|53|54|55|56|70|71|73} restart
echo "监控到php已停止,已执行重启计划,时间: `date "+%Y-%m-%d %H:%M:%S"` " >> /www/php_jiankong.log 
fi

自动重启

根据安装PHP版本号做更改,例如:/etc/init.d/php-fpm-54 restart )

/etc/init.d/php-fpm-{52|53|54|55|56|70|71} restart

4.Mysql自动重启脚本

检测并自动重启

pgrep -x mysqld &> /dev/null
if [ $? -ne 0 ];then
bash /www/server/panel/script/rememory.sh 
/etc/init.d/mysqld start 
echo "监控到MySQL已停止,已执行重启计划,时间: `date "+%Y-%m-%d %H:%M:%S"` " >> /www/mysql_jiankong.log 
fi
自动重启
/etc/init.d/mysqld restart

5.Redis和memcached自动重启脚本

/etc/init.d/memcached restart
/etc/init.d/redis restart

Redis检测并自动重启

ps=`ps -efl|grep redis|grep -v $0|grep -v grep|wc -l`
if [ $ps -eq 0 ];
then
    echo -e "\n$(date '+%Y-%m-%d %H:%M:%S') start "
    /etc/init.d/redis start
    echo "$(date '+%Y-%m-%d %H:%M:%S') done"
else
    echo $(date +%F%n%T) "redis正在运行..."
    exit 0;
fi

6.重启服务器(Linux)

reboot

7.日志查看

这个文件的位置是上面代码里面自己修改的

已有 5 条评论,让我们看看您的独特见解
OwO表情
  • 阿鲁
  • 兔斯基
  • 贴吧
  • 微博
🚨 小黑屋
  1. borzup

    感谢分享,嘿嘿嘿嘿嘿嘿

  2. 不凡

    服务器有MYSQL,长时间开着,内存占用会慢慢地增加,手动重启MYSQL可以释放一点内存,有了自动重启MYSQL的脚本,方便多了

    • 站长老白

      Mysql也需要自动重启吗

    • 不凡

      对啊,尤其是1G内存的服务器,长时间开着,内存占用每天一点一点地增加

    • 站长老白

      所得四类,学到了

个人中心
购物车
今日签到
有新私信 私信列表
搜索