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
代码如下:
- #!/bin/bash
- # chkconfig: 345 99 10
- # description: Startup Script for Oracle Databases
- # /etc/init.d/oracle11g
- export ORACLE_SID=mytest
- # export ORACLE_HOME_LISTNER=/apps/oracle/product/11.2.0.1/db_1/bin/
- export ORACLE_BASE=/apps/oracle
- export ORACLE_HOME=/apps/oracle/product/11.2.0.1/db_1
- export PATH=$PATH:$ORACLE_HOME/bin
- case "$1" in
- start)
- su oracle -c $ORACLE_HOME/bin/dbstart
- touch /var/lock/oracle
- echo "OK"
- ;;
- stop)
- echo -n "Shutdown Oracle: "
- su oracle -c $ORACLE_HOME/bin/dbshut
- rm -f /var/lock/oracle
- echo "OK"
- ;;
- *)
- echo "Usage: 'basename $0' start|stop"
- exit 1
- esac
- exit 0
保存
[root@ora11gr2 ~]# chkconfig --add oracle11g
[root@ora11gr2 ~]# chkconfig oracle11g on
这样,当系统重启开机时,oracle11g服务就会启动.
本文指导如何在 CentOS6.0_X86_64 系统下,通过修改 oratab 文件和设置开机启动脚本来实现 Oracle11gR2 的开机自动启动。通过更改 oratab 文件中的监听器路径,确保服务能够正常启动,并使用 init.d 脚本来实现开机自启。

被折叠的 条评论
为什么被折叠?



