首先打开Oracle设置的一个关卡:vi /etc/oratab,修改行:
orcl:/opt/oracle/11g:Y #默认为orcl:/opt/oracle/11g:N
此处代码参考别人的的,以root身份建立开机启动oracle服务的脚本:
vi /etc/init.d/oracle,添加如下脚本:
复制代码
!/bin/sh
chkconfig: 2345 20 80
description: Oracle dbstart / dbshut
以上两行为chkconfig所需
ORA_HOME=/u01/app/oracle/product/10.2.0/db_home1 #此处根据自己的ORACLE_HHOME进行设置。
ORA_OWNER=oracle
LOGFILE=/var/log/oracle.log
echo “#################################” >> {LOGFILE}
date +”### %T %a %D: Run Oracle” >>
{LOGFILE}
if [ ! -f
ORAHOME/bin/dbstart]||[!−f
{ORA_HOME}/bin/dbshut ]; then
echo “Error: Missing the script file
ORAHOME/bin/dbstartor
{ORA_HOME}/bin/dbshut!” >> {LOGFILE}
echo “#################################” >>
{LOGFILE}
exit
fi
start(){
echo “###Startup Database…”
su -
ORAOWNER−c"
{ORA_HOME}/bin/dbstart {ORA_HOME}”
echo “###Done.”
echo “###Run database control…”
su -
{ORA_OWNER} -c "{ORA_HOME}/bin/emctl start dbconsole”
echo “###Done.”
}
stop(){
echo “###Stop database control…”
su - ${ORA_OWNER} -c "${ORA_HOME}/bin/emctl stop dbconsole”
echo “###Done.”
echo “###Shutdown Database…”
su - ${ORA_OWNER} -c "${ORA_HOME}/bin/dbshut ${ORA_HOME}”
echo “###Done.”
}
case “
1” in
‘start’)
start >>
LOGFILE;;‘stop′)stop>>
{LOGFILE}
;;
‘restart’)
stop >>
LOGFILEstart>>
{LOGFILE}
;;
esac
date +”### %T %a %D: Finished.” >> {LOGFILE}
echo “#################################” >>
{LOGFILE}
echo “”
接着使用如下命令将 /etc/init.d/oracle 置为可执行文件:
chmod a+x /etc/init.d/oracle
然后 reboot 重启,数据库即可开机自动启动。