linux中oracle开机启动

联系:手机(+86 13429648788) QQ(107644445)QQ咨询惜分飞

标题:linux中oracle开机启动

作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]

#!/bin/bash
#chkconfig: 345 99 10
#description:oracle 开机自动运行
#*****************方法一(oradb文件使用)**********************
# 特点:复杂、功能完善、部署麻烦
# 一、使用root用户修改/etc/oratab 文件:
# $ vi /etc/oratab
# orcl:/u01/oracle:N (ORACLE_SID:ORACLE_HOME:N)
# 改为:
# orcl:/u01/oracle:Y 也就是将最后的N改为Y
# 二、使用Oracle用户修改$ORACLE_HOME/bin/dbstart和dbshut文件:
# ORACLE_HOME_LISTNER=$1
# 改为:
# ORACLE_HOME_LISTNER=$ORACLE_HOME
# 三、放置oradb于/etc/rc.d/init.d/
# 重命名该文件名为:oradb,复制到/etc/rc.d/init.d/中
# 四、组、权限、添加启动服务
# 修改所属组和用户
# chown oracle.oinstall /etc/rc.d/init.d/oradb
# 修改访问权限
# chmod 775 /etc/rc.d/init.d/oradb
# 添加服务到自动启动中
# chkconfig –add oradb
#------------添加关机自动关闭oracle的程序-----------
# 因为使用chkconfig配置的开机启动没有关闭系统时候关闭程序选项
# 需要人工设置K99oradb链接
# ln -s  /etc/rc.d/init.d/oradb  /etc/rc.d/rc0.d/K01oradb  
#-------------------结束----------------------------
# 查看数据库服务开机启动状态
# chkconfig –list oradb
#--------------整体执行脚本(步骤四)---------------
# chown oracle.oinstall /etc/rc.d/init.d/oradb
# chmod 775 /etc/rc.d/init.d/oradb
# chkconfig –add oradb
# ln -s  /etc/rc.d/init.d/oradb  /etc/rc.d/rc0.d/K01oradb  
# chkconfig –list oradb
#--------------------结束---------------------------
#*****************方法一(结束)**********************

#**************方法二(简单功能少)*******************
# 特点:简单、方便、不需要使用oradb文件
# 1、修改$ORACLE_HOME/bin下的dbstart文件,约在78行,
#    修改为ORACLE_HOME_LISTNER=$ORACLE_HOME
# 2、修改/etc/oratab文件,需要修改为正确的实例名
#    (格式为:$ORACLE_SID:$ORACLE_HOME:Y/N)
#    orcl:/u/oracle/product/10.2.0/db_1:Y
# 3、修改/etc/rc.local加入su - oracle -c 'dbstart'
#*****************方法二(结束)**********************
# description: Startup Script for Oracle Databases
# /etc/rc.d/init.d/oradb
export ORACLE_BASE=/u01
export ORACLE_HOME=/u01/oracle
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 -- start, stop, restart
# of the instance and listener or usage display
case "$1" in
start)
# Oracle listener and instance startup
echo -n "Starting Oracle: "
su - $ORA_OWNR -c "$ORACLE_HOME/bin/dbstart"
touch /var/lock/subsys/oradb
su - $ORA_OWNR -c "$ORACLE_HOME/bin/emctl start dbconsole"
echo "OK"
;;
stop)
# Oracle listener and instance shutdown
echo -n "Shutdown Oracle: "
su - $ORA_OWNR -c "$ORACLE_HOME/bin/emctl stop dbconsole"
su - $ORA_OWNR -c "$ORACLE_HOME/bin/dbshut"
rm -f /var/lock/subsys/oradb
echo "OK"
;;
reload|restart)
$0 stop
$0 start
;;
*)
echo "Usage: `basename $0` start|stop|restart|reload"
exit 1
esac
exit 0
此条目发表在 Linux, Oracle 分类目录。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>