使用linux计划任务自动拉起停止的通达OA服务apache和mysql服务
2015-11-24 12:04
706 查看
概述:
数据库或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
数据库或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
相关文章推荐
- Linux socket 初步
- linux lsof详解
- linux 文件权限
- Linux 执行数学运算
- 10 篇对初学者和专家都有用的 Linux 命令教程
- Linux 与 Windows 对UNICODE 的处理方式
- Ubuntu12.04下QQ完美走起啊!走起啊!有木有啊!
- 解決Linux下Android开发真机调试设备不被识别问题
- 运维入门
- 运维提升
- Linux 自检和 SystemTap
- Ubuntu Linux使用体验
- c语言实现hashmap(转载)
- Linux 信号signal处理机制
- linux下mysql添加用户
- Scientific Linux 5.5 图形安装教程
- 基于 Linux 集群环境上 GPFS 的问题诊断
- 谁是桌面王者?Win PK Linux三大镇山之宝
- vivi下重新调整分区