首先在/etc/rc.d/init.d/目录下配置Oracle的服务文件。
touch oracle10g
chmod a+x oracle10g
然后编辑此oracle10g文件。脚本内容如下。
[root@www.linuxidc.com~]# vi /etc/rc.d/init.d/oracle
#root
#chkconfig:35 85 15
#description:Oracle
#/etc/rc.d/init.d/oracle
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
ORACLE_SID=orcl
case "$1" in
start)
echo -n "Starting Oracle10g:"
su - oracle -c dbstart >>$ORACLE_HOME/log/autostart.log
su - oracle -c "lsnrctl start" >>$ORACLE_HOME/log/autostart.log
su - oracle -c "emctl start dbconsole" >>$ORACLE_HOME/log/autostart.log
;;
stop)
echo -n "Shutting Down Oracle10g:"
su - oracle -c "emctl stop dbconsole" >>$ORACLE_HOME/log/autostart.log
su - oracle -c "lsnrctl stop" >>$ORACLE_HOME/log/autostart.log
su - oracle -c dbshut >>$ORACLE_HOME/log/autostart.log
;;
restart)
echo -n "Restarting Oracle10g:"
su - oracle -c dbshut >>$ORACLE_HOME/log/autostart.log
su - oracle -c "lsnrctl stop" >>$ORACLE_HOME/log/autostart.log
su - oracle -c "emctl stop dbconsole" >>$ORACLE_HOME/log/autostart.log
su - oracle -c dbstart >>$ORACLE_HOME/log/autostart.log
su - oracle -c "lsnrctl start" >>$ORACLE_HOME/log/autostart.log
su - oracle -c "emctl start dbconsole" >>$ORACLE_HOME/log/autostart.log
;;
*)
echo "Usage: $0{start|stop|restart}"
exit 1
;;
esac
exit 0
保存文件,退出以后,添加并启动察看服务。
/sbin/chkconfig --add oracle10g
/sbin/chkconfig --list oracle10g
修改Oracle系统配置文件/etc/oratab,如果没有oratab文件,执行root.sh生成该oratab文件。vi /etc/oratab文件
orcl:/home/oracle/ora/products/10.2.0:N
改成
orcl:/home/oracle/ora/products/10.2.0:Y
Y:代表随机启动,N:手动启动
重新启动Linux的时候,如果看到启动项Oracle出现OK,代表Oracle成功随Linux启动了。