一、修改$ORACLE_HOME/bin/dbstart脚本 
  首先测试你的$ORACLE/bin/dbstart脚本,如果能正常启动Oracle,请跳到第二部分。 
本人运行环境为RedHat7.1+Oracle8.1.6,发现dbstart脚本有问题,不能得到当前运行的Oracle的版本号。编辑dbstart,找到 
STATUS=1 
if [ "$VERSION" = "8.1" ] 
在之前加上 
VERSION="8.1" 
二、建立/etc/init.d/oracle脚本如下:
#!/bin/bash 
# 
# oracle This shell script takes care of starting and stopping 
# the MySQL subsystem (mysqld). 
# 
# chkconfig: - 90 10 
# description: Oracle database server. 
# processname: oracle 
ORA_HOME=/home/oracle 
ORA_OWNER=oracle 
prog="Oracle" 
# Source function library. 
. /etc/rc.d/init.d/functions 
if [ ! -f $ORA_HOME/bin/dbstart ] 
then 
echo "Oracle startup: cannot start" 
exit 
fi 
start(){ 
su - $ORA_OWNER -c $ORA_HOME/bin/dbstart >/dev/null 2>&1 & 
ret=$? 
if [ $ret -eq 0 ]; then 
action $"Starting $prog: " /bin/true 
else 
action $"Starting $prog: " /bin/false 
fi 
[ $ret -eq 0 ] && touch /var/lock/subsys/oracled 
return $ret 
} 
stop(){ 
su - $ORA_OWNER -c $ORA_HOME/bin/dbshut >/dev/null 2>&1 
ret=$? 
if [ $ret -eq 0 ]; then 
action $"Stopping $prog: " /bin/true 
else 
action $"Stopping $prog: " /bin/false 
fi 
[ $ret -eq 0 ] && rm -f /var/lock/subsys/oracled 
return $ret 
} 
restart(){ 
stop 
start 
} 
# See how we were called. 
case "$1" in 
start) 
start 
;; 
stop) 
stop 
;; 
restart) 
restart 
;; 
condrestart) 
condrestart 
;; 
*) 
echo $"Usage: $0 {start|stop|restart}" 
exit 1 
esac 
三、运行命令chkconfig --add oracle,注册系统服务,然后就可以用ntsysv命令来管理你的Oracle服务了。 
四、可以到
 
http://fancao.oso.com.cn/script/dbstart 
http://fancao.oso.com.cn/script/oracle 
下载本文所提及文件。 
作者:凡草0515
                  	
				

wangzhe81 于 2006-08-02 12:40:25发表:
谢谢分享