oracle自動啟動和關閉的方法

BTxigua發表於2008-02-14

for AIX
方法一:使用載入inittab來啟動
1、利用oracle自己提供的dbstar和dbshut指令碼來啟動和關閉資料庫。
確認/etc/oratab檔案中的對應的例項的最後標誌為 Y 。
例如:ora92:/opt/oracle/app/oracle/product/9.2:Y
dbstart將根據這個標誌位來啟動對應的例項。這個檔案是由root.sh建立的。
可以在/etc或者其他目錄下再建立一個指令碼來呼叫dbstart命令。
#touch dbstart.sh
#chmod 755 dbstart.sh
#vi dbstart.sh
su - oracle -c "$ORACLE_HOME/bin/dbstart"
su - oracle -c "lsnrctl start "
2、將指令碼載入到inittab
#mkitab "dbstart:2:wait:/etc/dbstart.sh > /dev/console 2>&1"

方法二:載入到rc.d中
1、通上面的方法1建立一個指令碼/etc/dbstart.sh
2、載入到rc.d中
檢查/etc/inittab預設的啟動級別:init:2:initdefault:
這裡預設為2,即可轉到/etc/rc.d/rc2.d
#ln -s /etc/dbstart.sh /etc/rc.d/rc2.d/S99dbstart

另:在主機關閉的時候自動關閉資料庫的方法,可以在/usr/sbin/shutdown的前面載入
su - oracle -c "/$ORACLE_HOME/bin/dbshut"
su - oracle -c "/$ORACLE_HOME/bin/dbshut"

方法三:使用HA的應用程式資源組
smitty hacmp -> Initialization and Standard Configuration
-> Configure Resources to Make Highly Available -> Configure Application Servers
-> Change Application Server
Start Script. [/usr/es/sbin/cluster/local/startdb.sh]
Stop Script. [/usr/es/sbin/cluster/local/stopdb.sh]
startdb.sh指令碼和stopdb.sh指令碼分別呼叫$ORACLE_HOME/bin/dbstart和$ORACLE_HOME/bin/dbshut指令碼。


for Linux
方法1:載入rc服務來實現
建立指令碼:
#touch dbstart.sh
#chmod 755 dbstart.sh
#vi dbstart.sh
su - oracle -c "$ORACLE_HOME/bin/dbstart"
su - oracle -c "lsnrctl start "
在Linux中,檢查/etc/inittab預設的啟動級別,一般執行級別為3,id:3:initdefault:
然後轉到/etc/rc.d/rc3.d
#ln -s /etc/dbstart.sh /etc/rc.d/rc3.d/S99dbstart

方法2:在/etc/rc.local檔案中載入啟動命令
直接編輯rc.local檔案,在後面新增
#vi /etc/rc.local
su - oracle -c "$ORACLE_HOME/bin/dbstart"
su - oracle -c "lsnrctl start "

自動關閉方法:
#touch sysshut
#chmod 755 sysshut
#vi sysshut
su - oracle -c "$ORACLE_HOME/bin/dbshut"
su - oracle -c "lsnrctl stop"
shutdown $*
sysshut的使用方法跟shutdown的使用方法一致。


for hp unix
方法1:通過載入rc服務實現
先建立指令碼,指令碼類似上面的。
檢查/etc/inittab的預設的啟動級別:init:3:initdefault:
在rc3.d中載入服務
ln -s /etc/dbstart.sh /sbin/rc3.d/S99dbstart

自動關閉不能直接修改/usr/sbin/shutdown,可以通過自己寫一個shutdown的指令碼來實現
#touch sysshut
#chmod 755 sysshut
#vi sysshut
su - oracle -c "$ORACLE_HOME/bin/dbshut"
su - oracle -c "lsnrctl stop"
shutdown $*
sysshut的使用方法跟shutdown的使用方法一致。


for windows
windows就比較簡單了。oracle安裝完後,預設會在服務中註冊對應的服務,例如:
oracleservice
OracleOraHome92TNSListener
只要設定這兩個服務的啟動型別為自動就可以了。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10867315/viewspace-170287/,如需轉載,請註明出處,否則將追究法律責任。

相關文章