1.修改dbstart和dbshut启动关闭脚本
修改这两个文件,使其达到启动或者关闭数据库的同时也启动或者关闭监听程序。此两个文件的位置为如下:
$ORACLE_HOME/bin #我的位置为:/data/oracle/product/11.2.0/db_1/bin
1.1修改dbstart文件
修改此文件80行位置,将“ORACLE_HOME_LISTNER=$1” 修改为 :"ORACLE_HOME_LISTNER=$ORACLE_HOME "
1.2修改dbshut文件
修改此文件50行位置,将“ORACLE_HOME_LISTNER=$1” 修改为 :"ORACLE_HOME_LISTNER=$ORACLE_HOME ".
2.新建oracle的启动脚本
位置: /etc/init.d/
2.1 在文件添加如下内容
注意export ORACLE_BASE=/oracle和export ORACLE_SID=orcl两行。
export ORACLE_BASE后面为oracle的安装目录,一般到product的上一级目录。
export ORACLE_SID后面为实例名字。
#!/bin/sh
# chkconfig: 345 61 61
# description: Oracle 11g R2 AutoRun Servimces
# /etc/init.d/oracle
#
# Run-level Startup script for the Oracle Instance, Listener, and
# Web Interface
export ORACLE_BASE=/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export ORACLE_UNQNAME=$ORACLE_SID
export PATH=$ORACLE_HOME/bin:/user/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
ORA_OWNR="oracle"
# if the executables do not exist -- display error
if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
echo "Oracle startup: cannot start"
exit 1
fi
# depending on parameter -- startup, shutdown, restart
# of the instance and listener or usage display
case "$1" in
start)
# Oracle listener and instance startup
su $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart
echo "Oracle Start Succesful!OK."
;;
stop)
# Oracle listener and instance shutdown
su $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut
echo "Oracle Stop Succesful!OK."
;;
reload|restart)
$0 stop
$0 start
;;
*)
echo $"Usage: `basename $0` {start|stop|reload|reload}"
exit 1
esac
exit 0
2.2 修改文件的执行权限
chmod 750 /etc/rc.d/init.d/oracle
2.3 检查脚本是否能正常执行
cd /etc/rc.d/init.d
./oracle start
./oracle stop
3.修改oratab文件
位置:/etc/oratab(23行),将alms:/data/oracle/product/11.2.0/db_1:N改为alms:/data/oracle/product/11.2.0/db_1:Y
4.最后设置启动级别,执行如下语句
ln -s /etc/rc.d/init.d/oracle /etc/rc2.d/S61oracle
ln -s /etc/rc.d/init.d/oracle /etc/rc3.d/S61oracle
ln -s /etc/rc.d/init.d/oracle /etc/rc4.d/S61oracle
ln -s /etc/rc.d/init.d/oracle /etc/rc0.d/K61oracle
ln -s /etc/rc.d/init.d/oracle /etc/rc6.d/K61oracle
chkconfig --level 234 oracle on
chkconfig --add oracle