1:root用户执行,建立一个 名字叫oracle 的脚本,脚本内容如下
cd /etc/init.d/
vi oracle
#!/bin/sh
#
#description:start/shutdown script for the oracle 11gr2 database
#
#source function library
if [ -f /etc/init.d/functions ] ; then
. /etc/init.d/functions
elif [ -f /etc/rc.d/init.d/functions ] ; then
. /etc/rc.d/init.d/functions
else
exit 0
fi
DAEMON=oracle
prog=oracle
start() {
echo "starting $prog: "
su - oracle -c '/home/oracle/orastart.sh' >/dev/null 2>&1
RETVAL=$?
#start daemon
echo "Oracle started. "
[ $RETVAL=0 ] && touch /var/lock/subsys/oracle
return $RETVAL
}
stop() {
#stop damnon
echo "Stopping $prog: "
su - oracle -c '/home/oracle/orastop.sh' >/dev/null 2>&1
RETVAL=$?
echo "Oracle stopped. "
[ $RETVAL=0 ] && rm -f /var/lock/subsys/oracle
}
restart() {
stop
start
}
case $1 in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo "Usage: $DAEMON {start|stop|restart|condrestart|reload|status}"
exit 1
esac
chmod +x oracle
su - oracle
cd /home/oracle
vi orastart.sh
#!/bin/bash
lsnrctl start
sqlplus "/as sysdba" <<EOF
startup;
exit
EOF
vi orastop.sh
#!/bin/bash
lsnrctl stop
sqlplus "/as sysdba" <<EOF
shutdown immediate;
exit
EOF
[oracle@mydb11g ~]$ chmod 777 orast*
su - root
[root@mydb11g oracle]# cd /etc/rc3.d/
[root@mydb11g rc3.d]# ln -s /etc/rc.d/init.d/oracle S11oracle
[root@mydb11g rc3.d]# ls -la |grep oracle
lrwxrwxrwx 1 root root 23 Nov 9 10:56 S11oracle -> /etc/rc.d/init.d/oracle
reboot