CentOS6.0_X86_64 racle 11g R2 开机自动启动(linux)

 
oracle 在 linux 下的开机自动启动脚本,设置如下:
 
1.user root 下面修改:
[root@ora11gr2 ~]# vi /etc/oratab
mytest:/apps/oracle/product/11.2.0.1/db_1:Y
 
将N该为Y
 
2.user oracle 下面修改:
[root@ora11gr2 ~]# su - oracle
[oracle@ora11gr2 ~]$cd $ORACLE_HOME/bin
[oracle@ora11gr2 bin]$ vi dbstart
找到 ORACLE_HOME_LISTNER=$1 这行, 修改成:
ORACLE_HOME_LISTNER=/apps/oracle/product/11.2.0.1/
或者直接修改成:
ORACLE_HOME_LISTNER=$ORACLE_HOME
 
同样道理修改 dbshut
[oracle@ora11gr2 bin]$ vi dbshut
 
测试运行 dbshut, dbstart 看能否启动oracle 服务及listener服务
[oracle@ora11gr2 bin]$ ps -efw | grep ora_
[oracle@ora11gr2 bin]$ lsnrctl status
[oracle@ora11gr2 bin]$ ps -efw | grep LISTEN | grep -v grep
 
在切换回 user root:
[root@ora11gr2 ~]# cd /etc/rc.d/init.d/
 
[root@ora11gr2 init.d]# vi oracle11g
代码如下:
 
  1. #!/bin/bash  
  2. # chkconfig: 345 99 10  
  3. # description: Startup Script for Oracle Databases  
  4. # /etc/init.d/oracle11g  
  5. export ORACLE_SID=mytest  
  6. # export ORACLE_HOME_LISTNER=/apps/oracle/product/11.2.0.1/db_1/bin/  
  7. export ORACLE_BASE=/apps/oracle  
  8. export ORACLE_HOME=/apps/oracle/product/11.2.0.1/db_1  
  9. export PATH=$PATH:$ORACLE_HOME/bin  
  10. case "$1" in 
  11. start)  
  12. su oracle -c $ORACLE_HOME/bin/dbstart  
  13. touch /var/lock/oracle  
  14. echo "OK" 
  15. ;;  
  16. stop)  
  17. echo -n "Shutdown Oracle: " 
  18. su oracle -c $ORACLE_HOME/bin/dbshut  
  19. rm -f /var/lock/oracle  
  20. echo "OK" 
  21. ;;  
  22. *)  
  23. echo "Usage: 'basename $0' start|stop" 
  24. exit 1  
  25. esac  
  26. exit 0 
保存

 
[root@ora11gr2 ~]# chkconfig --add oracle11g
[root@ora11gr2 ~]# chkconfig oracle11g on

 
这样,当系统重启开机时,oracle11g服务就会启动.