oracle实例 监听自启动,设置Linux下Oracle实例和监听自动启动

Redhat5.5 下Oracle11.2g 自动随系统启动

安装完毕 Oracle 11.2g 每次都得手动启动 | 停止数据库(dbstart | dbshut)、监听器(lsnrctl)、控制台(emtcl)。

首先修改/etc/oratab文件

#vi /etc/oratab

找到orcl=/u01/app/oracle:N这一行

改为:

orcl=/u01/app/oracle:Y

也就是将最后的N改为Y,意思是将不允许自动启动改为允许自动启动。

设置一下,若手动启动数据库的同时监听器没有启动(即启动数据库时自动启动监听器,停止数据库时停止监听器),则需要修改 dbstart 脚本文件

cd /opt/app/oracle/product/11.2.0/db_1/bin

[root@oracle bin]# 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

同样,也需要修改 dbshut

[root@oracle bin]# vi dbshut

# The this to bring down 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-stop Oracle Net Listener"

echo "Usage: $0 ORACLE_HOME"

else

LOG=$ORACLE_HOME_LISTNER/listener.log

在启动了Linux系统之后,转到 /etc/init.d 目录下;

[root@oracle ~]# cd /etc/init.d

使用 vi 命令,新建一个以 oracle 命名的文件(并将以下代码复制至文件中)

[root@oracle 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=/opt/app

export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/db_1

export ORACLE_SID=wms7app1

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

在编辑完成之后,使用 :x 命令保存此文件。

赋予执行权限

[root@oracle init.d]# chmod 750 /etc/init.d/oracle

链接:

[root@oracle init.d]# ln -s /etc/init.d/oracle /etc/rc1.d/K61oracle

[root@oracle init.d]# ln -s /etc/init.d/oracle /etc/rc3.d/S61oracle

执行以下命令:

[root@oracle init.d]# chkconfig --level 345 oracle on

[root@oracle init.d]#chkconfig --add oracle //添加到服务里

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值