本文內容主要來自:http://lbyzx123.javaeye.com/blog/829235
1,在/etc/init.d/下建立指令碼檔案oracle10g,內容為:
# !/bin/bash
# whoami
# root
# chkconfig: 345 51 49
# /etc/init.d/oracle10g
# description: starts the oracle dabase deamons
#
ORA_HOME=/home/oracle/oracle/product/10.2.0/db_1/
ORA_OWNER=oracle
case "$1" in
start)
echo -n "Starting oracle10g: "
su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart" &
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"
touch /var/lock/subsys/oracle10g
echo
;;
stop)
echo -n "shutting down oracle10g: "
su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut" &
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"
rm -f /var/lock/subsys/oracle10g
echo
;;
restart)
echo -n "restarting oracle10g: "
$0 stop
$0 start
echo
;;
*)
echo "Usage: `basename $0` start|stop|restart"
exit 1
esac
exit 0
2,執行chkconfig oracle10g --add,添加服務3,上面指令碼不會啟動資料庫執行個體,需要修改檔案/etc/oratab(如果檔案不存在,則需要執行指令碼/home/oracle/oracle/product/10.2.0/db_1/root.sh)
將類似“orcl:/oracle/product/10.2.0/db_1:N”行中的N改成Y4,執行service oracle10g [start|stop]測試是否能啟動/停止資料庫;5,重啟機器測試資料庫是否啟動成功。