Linux版本:RedHat Enterprise Linux 5.6
Oracle版本:10g
1、修改/etc/oratab檔案
將orcl:/home/oracle/oracle/product/10.2.0/db_1:N
改為:orcl:/home/oracle/oracle/product/10.2.0/db_1:Y
2、在oracle賬戶下修改$ORACLE_HOME/bin/dbstart檔案:
# su - ORACLE
$ cd $ORACLE_HOME/bin
$ vi dbstart
找到 ORACLE_HOME_LISTNER=$1這一行
改為:
ORACLE_HOME_LISTNER=$ORACLE_HOME
………………
3、建立如下指令碼,名稱為oracle
#!/bin/bash
# chkconfig: 2345 99 10
# description: Startup Script for oracle Databases
# /etc/rc.d/init.d/oradbstart
export ORACLE_BASE=/home/oracle/oracle/
export ORACLE_HOME=/home/oracle/oracle/product/10.2.0/db_1
export ORACLE_SID=orcl
export PATH=$PATH:$ORACLE_HOME/bin
case "$1" in
start)
echo "-----startup oracle-----" >> $ORACLE_HOME/log/oracleLog.log
su oracle -c $ORACLE_HOME/bin/dbstart
touch /var/lock/subsys/oracle
echo "-----startup oracle successful-----" >>$ORACLE_HOME/log/oracleLog.log
echo "OK"
;;
stop)
echo "-----shutdwn oracle-----" >> $ORACLE_HOME/log/oracleLog.log
su oracle -c $ORACLE_HOME/bin/dbshut
rm -f /var/lock/subsys/oracle
echo "-----shutdown oracle successful-----" >> $ORACLE_HOME/log/oracleLog.log
echo "OK"
;;
*)
echo "Usage: 'basename $0' start|stop"
exit 1
esac
exit 0
4、修改許可權
#su - root
chown oracle /etc/init.d/oracle
chmod 775 /etc/init.d/oracle
5、建立串連
建符號連結檔案。
chkconfig --add /etc/init.d/oracle
(注意這裡一般要重啟系統)
6、驗證
複製代碼 代碼如下:
#cd /etc/init.d
sh oracle11 start
執行後,看看/$ORACLE_HOME/log/目錄下的oracleLog檔案,裡面是不是有指令碼的啟動分支輸出資訊呢?
Sh oracle11 stop
執行後,看看/$ORACLE_HOME/log/目錄下的oracleLog檔案,裡面是不是有指令碼的關閉分支輸出資訊呢?
若看到資訊,表示您設定成功了。若沒有,請再仔細設定一遍,並注意檔案的許可權問題。LINUX的使用者概念是很嚴格的。畢竟是多使用者系統嘛。