Linux 下Oracle11g 自动启动和关闭

在完成Oracle11g安装后,每次系统重启都是需要手动启动oracle服务和监听服务的,通过以下方法可以配置oracle服务和监听随系统启动和关闭,不需要人工手动介入。

root用户登录,修改/etc/oratab文件
# vi /etc/oratab
找到

orcl=/u01/app/oracle/product/11.2.0/db_1:N
改为:
orcl=/u01/app/oracle/product/11.2.0/db_1:Y
也就是将最后的N改为Y,意思是将不允许自动启动改为允许自动启动。


修改dbstart和dbshut脚本:

# vi dbstart

# First argument is used to bring up Oracle Net Listener

ORACLE_HOME_LISTNER=$1

//需要将此处的ORACLE_HOME_LISTNER=$1修改为

ORACLE_HOME_LISTNER=$ORACLE_HOME

if [ ! $ORACLE_HOME_LISTNER ] ; then

  echo "ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener"

  echo "Usage: $0 ORACLE_HOME"

else

  LOG=$ORACLE_HOME_LISTNER/listener.log

# vi dbshut

# First argument is used to bring up Oracle Net Listener

ORACLE_HOME_LISTNER=$1

//需要将此处的ORACLE_HOME_LISTNER=$1修改为

ORACLE_HOME_LISTNER=$ORACLE_HOME

if [ ! $ORACLE_HOME_LISTNER ] ; then

  echo "ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener"

  echo "Usage: $0 ORACLE_HOME"

else

  LOG=$ORACLE_HOME_LISTNER/listener.log

在编辑完成之后,按”Ecs”键,:x命令保存此文件。

 

在/etc/init.d 目录下创建oracle脚本,将oracle注册为系统服务:

# cd /etc/init.d

# vi oracle

#!/bin/sh

# chkconfig: 345 61 61

# description: Oracle 11g AutoRun Services

# /etc/init.d/oracle

#

# Run-level Startup script for the Oracle Instance, Listener, and

# Web Interface

 

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

export ORACLE_SID=orcl

export PATH=$PATH:$ORACLE_HOME/bin

 

ORA_OWNR="oracle"

 

# if the executables do not exist -- display error

 

if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]

then

     echo "Oracle startup: cannot start"

     exit 1

fi

 

# depending on parameter -- startup, shutdown, restart

# of the instance and listener or usage display

 

case "$1" in

 start)

     # Oracle listener and instance startup

     su $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart

     echo "Oracle Start Succesful!OK."

     ;;

 stop)

     # Oracle listener and instance shutdown

     su $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut

     echo "Oracle Stop Succesful!OK."

     ;;

 reload|restart)

     $0 stop

     $0 start

     ;;

 *)

     echo $"Usage: `basename $0` {start|stop|reload|reload}"

     exit 1

esac

exit 0

在编辑完成之后,按”Ecs”键,:x命令保存此文件。

 

赋予执行权限

#chmod 755 /etc/init.d/oracle

 

创建链接:

# ln-s /etc/init.d/oracle /etc/rc1.d/K61oracle

# ln-s /etc/init.d/oracle /etc/rc3.d/S61oracle

 

将oracle添加到服务里:

#chkconfig --level 345 oracle on

#chkconfig --add oracle

 

重启oracle服务

#service oracle reload

ProcessingDatabase instance "orcl": log file/home/u01/app/oracle/product/11.2.0/db_1/shutdown.log

OracleStop Succesful!OK.

ProcessingDatabase instance "orcl": log file /home/u01/app/oracle/product/11.2.0/db_1/startup.log

OracleStart Succesful!OK.

重启成功,则配置Oracle随系统启动和关闭成功。


转载来自:http://blog.csdn.net/wanghuaiyuanwhy/article/details/42970817?ref=myread

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值