Oracle GoldenGate微服务架构的服务Shell脚本

Oracle GoldenGate微服务架构的/etc/init.d下的OracleGoldenGate服务Shell脚本:

#!/bin/sh
#
# Oracle GoldenGate Service Manager
#
# Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
#

# chkconfig:        2345 99 95
# description:      The Oracle GoldenGate Service Manager is #                   responsible for managing all other Oracle #                   GoldenGate services.
# processname:      ServiceManager

### BEGIN INIT INFO
# Provides:          OracleGoldenGate
# Required-Start:    $syslog $remote_fs $network $named $time
# Default-Start:     2 3 5
# Default-Stop:      0 1 4 6
# Short-Description: Oracle GoldenGate Service Manager
# Description:       The Oracle GoldenGate Service Manager is responsible for
#                    managing all other Oracle GoldenGate services.
### END INIT INFO

PROGRAM="ServiceManager"
USER=oggma
OGG_HOME=/home/oggma/app/oggma
OGG_VAR_HOME=/home/oggma/app/oggsm/var

isProgramRunning() {
    pid=$(cat ${OGG_VAR_HOME}/run/${PROGRAM}.pid 2>/dev/null)
    [[ ! -z ${pid} ]] &&         ps xaw | grep -q "^ *${pid}[ ].*${OGG_HOME}/bin/${PROGRAM}"
 }

startService() {
    if ( isProgramRunning ); then
        echo "Oracle GoldenGate ${PROGRAM} already running"
        exit 1
    fi
    echo "Starting Oracle GoldenGate..."
    su - ${USER} -c "/bin/bash -c 'nohup ${OGG_HOME}/bin/${PROGRAM} &>/dev/null'" &
    RETVAL=$?
    [ ${RETVAL} -eq 0 ] && echo "Success" || echo "Failed"
}

stopService() {
    pid=$(cat ${OGG_VAR_HOME}/run/${PROGRAM}.pid 2>/dev/null)
    if ( ! isProgramRunning ); then
        echo "Oracle GoldenGate ${PROGRAM} not running"
        exit 1
    fi
    echo "Stopping Oracle GoldenGate..."
    kill ${pid}
    RETVAL=$?
    [ ${RETVAL} -eq 0 ] && echo "Success" || echo "Failed"
    sleep 2
}

status() {
    if ( ! isProgramRunning ); then
        echo "Oracle GoldenGate ${PROGRAM} not running"
        exit 1
    fi
    echo "Oracle GoldenGate ${PROGRAM} running"
    RETVAL=0
}

case "$1" in
    start)
        startService
        ;;

    stop)
        stopService
        ;;

    restart)
        stopService
        startService
        ;;

    status)
        status
        ;;

    *)
        echo $"Usage: $0 {start|stop|status|restart}"
        exit 1
esac
exit ${RETVAL}

 

转载于:https://www.cnblogs.com/ZeroTiny/p/9361340.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值