自动启动ORACLE脚本

来源:互联网 发布:等级和阶级 知乎 编辑:程序博客网 时间:2024/06/06 17:46

1、自己写一个系统脚本 oracle10g

#
# oracle start
#
# chkconfig: 345 99 01
# description: oralce 10G server

ORACLE_HOME=/oracle/product/10g

if [ ! -f $ORACLE_HOME/bin/dbstart ]
then
echo "oralce cannot start"
exit
fi

if [ ! -f $ORACLE_HOME/bin/lsnrctl ]
then
echo "lsnrctl cannot start"
exit
fi

case "$1" in
'start')
        echo "starting oracle 10g"
        su - oracle -c "$ORACLE_HOME/bin/dbstart"
        su - oracle -c "$ORACLE_HOME/bin/lsnrctl start"
        su - oracle -c "$ORACLE_HOME/bin/emctl start dbconsole"
;;
'stop')
        echo "stopping oracle 10g"
        su - oracle -c "$ORACLE_HOME/bin/emctl stop dbconsole"
        su - oracle -c "$ORACLE_HOME/bin/dbshut"
        su - oracle -c "$ORACLE_HOME/bin/lsnrctl stop"
;;
*)
        echo "usage $0: start|stop"
esac

2、 直接把启动ORACLE的指令放在/etc下rc.local文件里,然后chkconfig oralce10g on 就可以添加到系统启动中,可以通过chkconfig oralce10g --list查看    注:oracle10g为脚本名称。

3、也可以手工配置服务,也就是,在rc3.d目录下创建一个软链接文件名S90oracle,也就是linux的第3号模式,如果是3号模式启动linux,那么会自动执行S90oracle这个脚本,这样就会自动启动oracle,它实际连接的文件是/etc/rc.d/init.d/oracle(例子)
 S90    ---第3号模式启动的话,oracle是第90号启动的程序,当然,前面不一定有89个程序
 比如:
S05diskscan
S98weblogic
S99oracle

 那关闭的时候,也一样,需要按顺序去执行K开头的软链接,
比如
K10oracle
K11weblogic
 
这两个其实是同一个东西,/etc/init.d是/etc/rc.d/init.d的软链接