zoukankan      html  css  js  c++  java
  • oracle自动启动与停止

    最近做开发时,发觉每次重新启动服务器时oracle数据库若没有关闭,则必须先关闭后在重新启动redhat advance server,oracle才能够正常运行。感觉这样麻烦,想到能否使数据库与web服务器与操作系统一同关闭与启动。在网上查找了一下相关资料,只找到一篇“Oracle Database HOWTO 自动启动及停止.htm”但是没有找到有关weblogic自动启动与停止的文章。经过摸索,我最初的想法实现了,因此想把它写出来,与大家交流。
    服务器环境:
    RedHat Advance Server2.1
    Oracle 9.2.2 for Linux
    Weblogic7.0 for Linux
    一、 oracle自动启动与停止
    1、 修改Oracle系统配置文件/etc/oratab
    /etc/oratab 格式为: SID:$ORACLE_HOME:AUTO
    把AUTO域设置为Y(大写),只有这样,oracle 自带的dbstart和dbshut才能够发挥作用。我的为:
    ora9i:/home/oracle/ora/products/9.2.0:Y
    2、 编写服务脚本:如下
    #!/bin/bash

    case "$1" in
    start)
    echo "Starting Oracle Databases ... "
    echo "-------------------------------------------------" >> /var/log/oracle
    date +" %T %a %D : Starting Oracle Databasee as part of system up." >> /var/log/oracle
    echo "-------------------------------------------------" >> /var/log/oracle
    su - oracle -c "dbstart" >> /var/log/oracle
    echo "Done."
    echo "Starting Oracle Listeners ... "
    echo "-------------------------------------------------" >> /var/log/oracle
    date +" %T %a %D : Starting Oracle Listeners as part of system up." >> /var/log/oracle
    echo "-------------------------------------------------" >> /var/log/oracle
    su - oracle -c "lsnrctl start" >> /var/log/oracle
    echo "Done."
    echo ""
    echo "-------------------------------------------------" >> /var/log/oracle
    date +" %T %a %D : Finished." >> /var/log/oracle
    echo "-------------------------------------------------" >> /var/log/oracle
    touch /var/lock/subsys/oracle

    ;;
    stop)
    echo "Stoping Oracle Listeners ... "
    echo "-------------------------------------------------" >> /var/log/oracle
    date +" %T %a %D : Stoping Oracle Listener as part of system down." >> /var/log/oracle
    echo "-------------------------------------------------" >> /var/log/oracle
    su - oracle -c "lsnrctl stop" >> /var/log/oracle
    echo "Done."
    rm -f /var/lock/subsys/oracle
    echo "Stoping Oracle Databases ... "
    echo "-------------------------------------------------" >> /var/log/oracle
    date +" %T %a %D : Stoping Oracle Databases as part of system down." >> /var/log/oracle
    echo "-------------------------------------------------" >> /var/log/oracle
    su - oracle -c "dbshut" >>/var/log/oracle
    echo "Done."
    echo ""
    echo "-------------------------------------------------" >> /var/log/oracle
    date +" %T %a %D : Finished." >> /var/log/oracle
    echo "-------------------------------------------------" >> /var/log/oracle

    ;;
    restart)
    $0 stop
    $0 start

    ;;
    *)
    echo "Usage: oracle {start|stop|restart}"
    exit 1
    esac

    将脚本命名为oracle,保存在/etc/rc.d/init.d下
    改变文件属性:chmod 755 oracle

    注意:在windows下编辑此文件时有DOS格式字符导致在linux下不能够正常运行,建议用gedit 或用 vi编辑

    3、建立服务连接:
    系统启动时启动数据库,我们需要以下连结∶
    --------------------------------------------------------------------------------
    $ ln -s ../init.d/oracle /etc/rc.d/rc2.d/S99oracle
    $ ln -s ../init.d/oracle /etc/rc.d/rc3.d/S99oracle
    $ ln -s ../init.d/oracle /etc/rc.d/rc5.d/S99oracle #rc4.d unused


    --------------------------------------------------------------------------------

    要在重新启动时停止数据库,我们需要以下连结∶


    --------------------------------------------------------------------------------

    $ ln -s ../init.d/oracle /etc/rc.d/rc0.d/K01oracle # 停止
    $ ln -s ../init.d/oracle /etc/rc.d/rc6.d/K01oracle # 重新启动
  • 相关阅读:
    装饰器模式(学习笔记10)
    软件设计七大原则 (学习笔记2)
    设计模式(学习笔记1)
    桥接模式 (学习笔记9)
    Mini2440裸机开发之LCD基础
    配置中心java客户端实现
    高效CSS写法
    整理电脑里面的前端开发中的小Tips【及时更新】
    IE6 position:fixed (固定定位)的解决方案
    jquery 文档操作
  • 原文地址:https://www.cnblogs.com/jimeper/p/1166074.html
Copyright © 2011-2022 走看看