从朋友那里得来的OGG 重启脚本,感觉很好用,分享给大家。

定时任务

00 6-20 * * * /oggdata/log/oggautorestart.sh >/oggdata/log/crontab_oggautorestart.log 2>&1
[说明]  因为晚上可以有维护操作,我们不希望在维护期间OGG 自动跑起来

脚本

oggautorestart.sh

#!/bin/bash
if [ -f ~/.bash_profile ];
then
      . ~/.bash_profile
fi

#OGG 目录
OGGHOME=/oggdata
#创建日志目录
if [ ! -d $OGGHOME/log ]; then
   mkdir $OGGHOME/log;
fi

cd $OGGHOME/log
echo "Start checking ......begin time: `date +'%Y%m%d %H:%M:%S'`" >> $OGGHOME/log/all.log
echo "info all"|$OGGHOME/ggsci|grep -E "MANAGER" >> $OGGHOME/log/status.all
echo "info all"|$OGGHOME/ggsci |grep -E "REPLICAT|EXTRACT" >> $OGGHOME/log/status.all

cat $OGGHOME/log/status.all | while read line
do
hhh=`echo $line | awk '{print $1}'`
sss=`echo $line | awk '{print $2}'`
nnn=`echo $line | awk '{print $3}'`

if [ "$hhh" = "MANAGER" ]
then
       if [ "$sss" != "RUNNING" ]
       then
               echo "$hhh is not running......start begin time: `date +'%Y%m%d %H:%M:%S'`" >> $OGGHOME/log/all.log
               echo "start $hhh" |$OGGHOME/ggsci
       else
               echo "MANAGER is running" >> $OGGHOME/log/ok.all
       fi

else
       if [ "$sss" != "RUNNING" ]
       then
               echo "$nnn is not running......start begin time: `date +'%Y%m%d %H:%M:%S'`" >> $OGGHOME/log/all.log
               echo "start $nnn" |$OGGHOME/ggsci
       else
               echo "$nnn is running" >> $OGGHOME/log/ok.all
       fi
fi

done

> $OGGHOME/log/status.all
> $OGGHOME/log/ok.all
echo "Ending check......end time: `date +'%Y%m%d %H:%M:%S'`" >> $OGGHOME/log/all.log
echo "##################" >> $OGGHOME/log/all.log

OGG 自动重启脚本的更多相关文章

  1. linux服务器挂掉自动重启脚本(转)

    实现原理主要是使用linux提供的crontab机制,定时查询服务器进程是否存在,如果宕机则执行我们预设的重启脚本. 首先我们要向crontab加入一个新任务 sudo crontab -e #进入编 ...

  2. tomcat宕机自动重启脚本

    #!/bin/bash# 获取tomcat进程ID /usr/share/tomcatTomcatID=$(ps -ef |grep tomcat |grep -w 'tomcat'|grep -v ...

  3. Memcached进程挂掉自动重启脚本

    vim memcached_check.sh   #!/bin/sh #check memcached process and restart if down PATH=$PATH:/opt/env/ ...

  4. window程序意外关闭自动重启脚本实现

    @echo off : tasklist|find /i "xxxx"||start yyyy ping/n 127.1>nul 新建 .bat 文件,将其写入文件 xxxx ...

  5. linux下通过脚本实现自动重启程序的方法

    无论什么程序都不可能完美无缺,理论上,任何程序都有 Core Dump 的一天,正式运营的程序,尤其是服务器程序,一旦 Core Dump ,后果不堪设想,有过服务器开发经验的朋友,一定都经历过深夜美 ...

  6. supervisor开机自动启动脚本+redis+MySQL+tomcat+nginx进程自动重启配置

    [root@mongodb-host supervisord]# cat mongo.conf [program:mongo]command=/usr/local/mongodb/bin/mongod ...

  7. windows程序意外关闭子订重启脚本

    window程序意外关闭自动重启脚本实现   @echo off :1 tasklist|find /i "xxxx"||start yyyy ping/n 11 127.1> ...

  8. 【运维技术】shell脚本实现线程挂掉,自动重启功能

    由于分布式系统的流行,服务器上面部署的项目都是多实例的.而我又希望有一个功能,当服务器出现异常情况能够自动重启实例. 所以我想到了使用shell脚本监控实例进程id,如果不存在的话,就重启对应的实例. ...

  9. tomcat监控,自动重启shell脚本

    tomcat监控,自动重启shell脚本如下,取名 monitor_tomcat.sh: #!/bin/sh # func:自动监控tomcat脚本并且执行重启操作 # 获取tomcat进程ID(其中 ...

随机推荐

  1. python 递归和匿名函数

    1.理解函数执行流程 def foo1(b, b1=3): print("foo1 called", b, b1) def foo2(c): foo3(c) print(" ...

  2. DOS与cmd(windows)

    dos是计算机的最初期的操作系统,对电脑操作必须输入各种dos命令窗口,可以理解成运行计算机机器内部语言,知道编程吗?其实早期dos命令操作系统就是运行计算机内部的编程命令,因此操作人员都必须具有一定 ...

  3. STL源码剖析-学习笔记

    1.模板是一个公式或是蓝图,本身不是类或是函数,需进行实例化的过程.这个过程是在编译期完成的,编译器根据传递的实参,推断出形参的类型,从而实例化相应的函数 2. 后续补充-.

  4. RecyclerView的scrollToPosition和smoothScrollToPosition

    关于recyclerview滑向指定位置,肯定会想到scrollToPosition和smoothScrollToPosition两个方法. 源码分析scrollToPosition,最后会调用vie ...

  5. Python 图形库

    1. 总体介绍 http://www.cnblogs.com/Vito2008/p/5264291.html 2.pygal http://rfyiamcool.blog.51cto.com/1030 ...

  6. [转载]ftp和http区别

    本文围绕以下三个部分展开: 一.HTTP协议 二.FTP协议 三.HTTP与FTP的异同点 一.HTTP协议简介 1. 概念 HTTP: HyperText Transfer Protocal,超文本 ...

  7. 简单谈一谈Java内部类的使用原因

    使用内部类的原因 学习总得知其所以然,前面的一篇文章中我有提到过关于java内部类的几种用法以及一些示例,但是不明白内部类具体可以做什么,显然学习起来很渺茫,今天的文章简单说一说使用内部类的几个原因, ...

  8. 利用Python进行数据分析_Pandas_数据清理、转换、合并、重塑

    1 合并数据集 pandas.merge pandas.merge(left, right, how='inner', on=None, left_on=None, right_on=None, le ...

  9. Anaconda安装报错

    通用解决方案:先卸载,然后重新安装(注意安装路径全英文且不要有空格),勾选添加环境变量选项

  10. 『Python基础练习题』day01

    个人主页: https://lipeiguan.top 1.简述变量命名规范 2.name = input(">>>") name变量是什么数据类型? 3.if条 ...