zoukankan      html  css  js  c++  java
  • 使用linux计划任务自动拉起停止的通达OA服务apache和mysql服务

    概述:

    数据库或web服务器瞬时并发过大时,可能面临宕机的危险,用类似开门狗的程序自动监控程序是否正常运行,在服务停止时自动启动服务,可临时解决该问题


    监控apache服务的脚本:

    每两分钟执行脚本检查apache程序是否正常运行,如果不正常则自动启动服务

    vi /usr/sbin/startpache

    加入如下内容:

    #检查apache服务是否正常运行,如果停止了则拉起服务

    #!/bin/sh

    web=`/usr/bin/pgrep httpd`

    if [ "$web" == "" ]

    then

    echo "the apacheserver not running"

    /opt/lampp/lampp startapache

    else

    echo "the apacheserver is running"

    fi


    3、修改文件属性,使其可执行

    chmod +x /usr/sbin/startpache

     

    4、修改/etc/crontab

    vi /etc/crontab

    #两分钟执行脚本检查程序是否正常运行

    */2 * * * * root /usr/sbin/startpache


    5、重新启动crond

    /etc/rc.d/init.d/crond restart


    监控mysql服务的脚本:

    作用:每两分钟执行脚本检查mysql数据库是否正常运行,如果不正常则自动启动mysql服务

    vi /usr/sbin/startmysql


    加入如下内容:

    #检查mysql服务是否正常运行,如果停止了则拉起服务

    #!/bin/sh

    mysql=`/usr/bin/pgrep mysqld`

    if [ "$mysql" == "" ]

    then

    echo "the mysql not running"

    /opt/lampp/lampp startmysql

    else

    echo "the mysql server is running"

    fi


    3、修改文件属性,使其可执行

    chmod +x /usr/sbin/startmysql

     

    4、修改/etc/crontab

    vi /etc/crontab

    #两分钟执行脚本检查程序是否正常运行

    */2 * * * * root /usr/sbin/startmysql


    5、重新启动crond

    /etc/rc.d/init.d/crond restart


    ==================================================

    计划任务每天早上执行PHP脚本:

    编写PHP脚本修改员工手册的通知置顶uppper_notify_ygsc.php,放到opt/lampp/htdocs/MYOA/webroot/se_widget/mail_remind目录下

    <?php

    include_once("inc/conn.php");

    include_once("inc/utility_all.php");

    include_once("inc/utility_file.php");

    include_once("inc/utility_org.php");

    header('content-type:text/html;charset=gbk');


    /**

    * 1.HR的员工手册在OA公告栏中需要置顶,每天8点运行一次

    */


        

    $today = date('Y-m-d');



    $sql = "update NOTIFY set BEGIN_DATE = '{$today}' where SUBJECT like '%员工手册V1.1版本已于2014年7月X日发布,请查点查看详情%' and notify_id='3877'";


    exequery($connection,$sql);


    // 关闭浏览器(调试时禁用)

     

     echo "<script type="text/javascript">"; 

     echo "self.opener=null;"; 

     echo "self.open('', '_self');"; 

     echo "self.close();"; echo "</script>";


    ?>

    添加脚本可执行权限

    chmod +x /opt/lampp/htdocs/MYOA/webroot/se_widget/mail_remind/uppper_notify_ygsc.php

    编辑计划任务

    vi /etc/crontab

    将以下内容拷入计划任务文件中

    #每天早上8点运行PHP脚本,修改员工手册的通知置顶

    * 8 * * * root /opt/lampp/bin/php /opt/lampp/htdocs/MYOA/webroot/se_widget/mail_remind/uppper_notify_ygsc.php


    重启计划任务

    /etc/rc.d/init.d/crond restart

  • 相关阅读:
    JVM优化系列之一(-Xss调整Stack Space的大小)
    被kill问题之2:Docker环境下Java应用的JVM设置(容器中的JVM资源该如何被安全的限制)
    docker的坑
    docker容器内存占用 之 系统cache,docker下java的内存该如何配置--temp
    查看docker容器的内存占用
    使用Java监控工具出现 Can't attach to the process
    使用docker查看jvm状态,在docker中使用jmap,jstat
    在Docker中监控Java应用程序的5个方法
    HDU2552 三足鼎立 【数学推理】
    C++面向对象模型
  • 原文地址:https://www.cnblogs.com/reblue520/p/6239897.html
Copyright © 2011-2022 走看看