Oracle在linux下的开机自启动(2种方法)

1、配置dbstart、dbstart为系统服务(有详细的日志可检查)

     a、修改/etc/oratab文件,将auto域设置为Y

           tom:/home/app/oracle/product/10.2.0.1:Y

    b、编辑注册服务使用的文件/etc/rc.d/init.d/oracle

#chkconfig:2345 99 01
#description:Oracle Server
#/etc/rc.d/init.d/oracle
#........   Oracle   ........
#..........
case   "$1"   in
      start)
                  echo   -n   "Starting   Oracle   Databases:   "
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  date   +"!   %T   %a   %D   :   Starting   Oracle   Databases   as   part   of   system   up."   >>   /var/log/oracle
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  su   -   oracle   -c   dbstart   >>   /var/log/oracle
                  echo   "Done."
                  echo   -n   "Starting   Oracle   Listeners:   "
                  su   -   oracle   -c   "lsnrctl   start"   >>   /var/log/oracle
                  echo   "Done."
                  echo   ""
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  date   +"!   %T   %a   %D   :   Finished."   >>   /var/log/oracle
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  touch   /var/lock/subsys/oracle
                  ;;
      stop)
                  echo   -n   "Shutting   Down   Oracle   Listeners:   "
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  date   +"!   %T   %a   %D   :   Shutting   Down   Oracle   Databases   as   part   of   system   down."   >>   /var/log/oracle
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  su   -   oracle   -c   "lsnrctl   stop"   >>   /var/log/oracle
                  echo   "Done."
                  rm   -f   /var/lock/subsys/oracle
                  echo   -n   "Shutting   Down   Oracle   Databases:   "
                  su   -   oracle   -c   dbshut   >>   /var/log/oracle
                  echo   "Done."
                  echo   ""
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  date   +"!   %T   %a   %D   :   Finished."   >>   /var/log/oracle
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  ;;
      restart)
                  echo   -n   "Restarting   Oracle   Databases:   "
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  date   +"!   %T   %a   %D   :   Restarting   Oracle   Databases   as   part   of   system   up."   >>   /var/log/oracle
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  su   -   oracle   -c   dbstop   >>   /var/log/oracle
                  su   -   oracle   -c   dbstart   >>   /var/log/oracle
                  echo   "Done."
                  echo   -n   "Restarting   Oracle   Listeners:   "
                  su   -   oracle   -c   "lsnrctl   stop"   >>   /var/log/oracle
                  su   -   oracle   -c   "lsnrctl   start"   >>   /var/log/oracle
                  echo   "Done."
                  echo   ""
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  date   +"!   %T   %a   %D   :   Finished."   >>   /var/log/oracle
                  echo   "----------------------------------------------------"   >>   /var/log/oracle
                  touch   /var/lock/subsys/oracle
                  ;;
      *)
                  echo   "Usage:   oracle   {start|stop|restart}"
                  exit   1
esac

         c、修改权限,配置各运行级别的符号链接并增加到系统服务

              chown oracle.oinstll /etc/rc.d/init.d/oracle

              chmod 755 /etc/rc.d/init.d/oracle

              在正确的执行等级目录(runlevel directories) /etc/rc.d/rcX.d 中建立及删除符号连结,以确保在等级2, 3 , 4, 5 下启动DB

               ln -s ../init.d/oracle /etc/rc.d/rc2.d/S99oracle

               ln -s ../init.d/oracle /etc/rc.d/rc3.d/S99oracle

               ln -s ../init.d/oracle /etc/rc.d/rc4.d/S99oracle

               ln -s ../init.d/oracle /etc/rc.d/rc5.d/S99oracle

               ln -s ../init.d/oracle /etc/rc.d/rc0.d/K01oracle # 停止

               ln -s ../init.d/oracle /etc/rc.d/rc1.d/K01oracle # 停止

               ln -s ../init.d/oracle /etc/rc.d/rc6.d/K01oracle # 重新启动

               chkconfig --add /etc/rc.d/init.d/oracle 把oracle service添加到服务里

               chkconfig --list oracle
               oracle 0:关闭 1:关闭 2:关闭 3:开启 4:开启 5:开启 6:关闭

         d、查看日志

             /var/log/oracle

             $ORACLE_HOME/startup.log;$ORACLE_HOME/shutdown.log;

         e、使用:

             1) 系统关闭和启动时调用dbshut 和dbstart启动和关闭数据库和监听;

             2) Service oracle stop|start|restart

2、linux下系统开机oracle自启动

$su - root
1、linux下oracle自带的dbstart和dbshut没反应:   修改Oracle系统配置文件/etc/oratab文件: #vi /etc/oratab
  /etc/oratab 格式为: SID:ORACLE_HOME:AUTO
  把AUTO域设置为Y(大写),我的为:
  oradb:/opt/u01/app/oracle/product/9.2.0.4:Y
      只有这样,oracle 自带的dbstart和dbshut才能够发挥作用。
2、修改/etc/rc.d/rc.local配置文件
   在/etc/rc.d/rc.local中加入如下内容: #vi /etc/rc.d/rc.local
   su - oracle -c "/u01/app/oracle/product/9.2.0.4/bin/lsnrctl start"
   su - oracle -c "/u01/app/oracle/product/9.2.0.4/bin/dbstart start"
3、重新启动
  #reboot
4、连接测试(以oracle身份登录)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值