Oracle自動啟動和關閉的方法 (轉)

ningzi82發表於2010-09-17


本文講述了有關Oracle在AIX,Linux,hp unix,Windows下的自動啟動和關閉方法。


  for AIX

  方法一:使用載入inittab來啟動

  1、利用oracle自己提供的dbstar和dbshut指令碼來啟動和關閉資料庫。

  確認/etc/oratab檔案中的對應的例項的最後標誌為 Y 。

  例如:ora92:/opt/oracle/app/oracle/product/9.2:Y

  dbstart將根據這個標誌位來啟動對應的例項。這個檔案是由root.sh建立的。

  可以在/etc或者其他目錄下再建立一個指令碼來呼叫dbstart命令。

[@more@]

#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

  只要設定這兩個服務的啟動型別為自動就可以了。

轉自:http://dev.firnow.com/course/7_databases/oracle/Oracleshl/2008810/135694.html

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

相關文章