centos开机启动oracle,centos 设置oracle 开机自启动

linux下设置oracle随操作系统启动而启动,停止而停止

1.oracle提供了两个脚本dbstart(启动)和dbshut(停止)启动和停止数据库和监听程序

The DB server software provides the two scripts to configure automatic DB startup/shutdown with the server machine. They are $ORACLE_HOME/bin/dbstart $ORACLE_HOME/bin/dbshut

首先需要调试这个两个脚本,单独调用这两个脚本启动和停止数据库

单独执行时会报如下错误:

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

原因是脚本中ORACLE_HOME_LISTNER=$1需要传入参数,所以需要修改脚本中ORACLE_HOME_LISTNER=$ORACLE_HOME

dbshut脚本同样需要修改

2.需要修改/etc/oratab中$ORACLE_SID:$ORACLE_HOME:N中的N改为Y如下

orcl:/u01/app/oracle/oracle/product/11.2.0.4/dbhome_1:Y

原因是dbstart和dbshut脚本里会判断这个文件中实例行是否Y,如果为N不进行启动和停止

第一种:

这是可以把dbstart脚本加入/etc/rc.local中

su - oracle -c /u01/app/oracle/oracle/product/11.2.0.4/dbhome_1/bin/dbstart

重启操作系统,发现oracle可以随操作系统启动而启动

这种方法有个问题再操作系统停止时,oracle数据库不会先操作系统停止前正常停止,而是强制停止

第二种:

把oracle做为操作系统服务随操作系统启动

编写一个启动和停止脚步 dbora 如下:

#!/bin/bash

#

# description: Oracle auto start-stop script.

#

# chkconfig: 2345 99 10

#

# processname: oracle

# config: /etc/oratab

# pidfile: /var/run/oracle.pid

# Source function library.

. /etc/init.d/functions

RETVAL=0

ORA_OWNER="oracle"

ORA_HOME="/u01/app/oracle/oracle/product/11.2.0.4/dbhome_1"

# See how we were called.

prog="oracle"

start() {

echo -n $"Starting $prog: "

su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart"

su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"

RETVAL=$?

echo

[ $RETVAL -eq 0 ] && touch /var/lock/subsys/dbora

return $RETVAL

}

stop() {

echo -n $"Stopping $prog: "

su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut"

su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"

RETVAL=$?

echo

[ $RETVAL -eq 0 ] && rm -r /var/lock/subsys/dbora

return $RETVAL

}

restart() {

stop

start

}

case "$1" in

start)

start

;;

stop)

stop

;;

restart)

restart

;;

*)

echo $"Usage: $0 {start|stop|restart}"

exit 1

esac

exit $?

把脚本放到oracle home/bin目录下并赋予执行权限

单独调式脚本 ./dbora start ./dbora stop 执行没有问题,把dbora添加为服务

拷贝dbora 到/etc/init.d目录下

[root@mydb3 init.d]# cp /u01/app/oracle/oracle/product/11.2.0.4/dbhome_1/bin/dbora /etc/init.d/dbora

赋予权限

[root@mydb3 init.d]# chmod 755 /etc/rc.d/init.d/dbora

添加为操作系统服务

[root@mydb3 init.d]# chkconfig --add dbora

[root@mydb3 init.d]# chkconfig --list dbora

dbora 0:off 1:off 2:on 3:on 4:on 5:on 6:off

测试操作系统重启,数据库一起重启

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值