天天看點

oracle啟動和關閉

資料庫的啟動有三種:

1:startup nomount

        這種過程又稱為:非安裝啟動

        啟動過程為:啟動oracle執行個體,不加載資料庫,不打開資料庫。在這個過程中隻需要init.ora初始化參數檔案,重建控制檔案,即啟動SGA和背景程序

在以下幾種情況下需要用到這種模式:

    A:資料庫的控制檔案全部損害

    B:需要建立資料庫的控制檔案和建立一個新的資料庫時。

2:startup mount

        這種過程又被成為:安裝啟動

        啟動過程:打開控制檔案,确認資料檔案和聯機日志檔案的位置,但此時不對資料檔案和日志檔案進行一緻性,正确性等校驗檢查。

        在以下幾種情況下需要用到這種模式:

    A:資料庫歸檔日志

    B:資料庫媒體恢複

    C:使資料檔案聯機或脫機

    D:重新定位資料檔案、重做日志檔案

3:startup (open)

        這裡可以加上open,也可以不加open。

        以這種方式啟動的資料庫過程為:啟動資料庫執行個體 裝載資料庫 打開資料庫。這種方式又執行了包括Redo log檔案在内的所有資料庫檔案,并檢查一緻性等,進行crash恢複,這種方式下可通路資料庫中的資料。

還有以下幾種情況:

     隻讀方式打開資料

Startup mount;

ALTER DATABASE OPEN READ ONLY   

       限制方式啟動

       在進行資料庫裝載或資料的導入或導出時,希望資料庫對你打開但不對普通使用者打開,可以用這種方式來啟動資料庫。

Startup restrict;

        如果你結束了維護,希望對普通使用者開放資料庫,那麼執行下面的指令:

Alter system disable restricted session;

        而下面的這指令等同于STARTUP RESTRICT

ALTER SYSTEM ENABLE RESTRICTED SESSION;

        這個指令并不妨礙現有的使用者,除非新登入的使用者具有限制會話權限。

非特權使用者通路時,會出現以下提示:

ERROR:

ORA-01035: ORACLE 隻允許具有 RESTRICTED SESSION 權限的使用者使用

startup force

         強制啟動方式

        若在正常啟動資料庫時遇到一些麻煩,或在上次關閉資料庫時不能正常關閉,則可以采取強制啟動。先關閉資料庫,再執行正常啟動資料庫指令。

startup pfile=參數檔案名

         帶初始化參數檔案的啟動方式

         先讀取參數檔案,再按參數檔案中的設定啟動資料庫,它并不影響資料庫的運作方式。

例:startup pfile=E:\Oracle\admin\oradb\pfile\init.ora

資料庫關閉:shutdown

shutdown有四個參數,四個參數的含義如下:

         Normal —— 需要等待所有的使用者斷開連接配接

    Immediate —— 等待使用者完成目前的語句

Transactional —— 等待使用者完成目前的事務

           Abort  ——  不做任何等待,直接關閉資料庫

normal

         這個指令一旦發出,任何使用者不能再連結到資料庫。

         在關閉資料庫之前,oracle等待所用使用者退出會話。

         重新開機資料庫不需要執行個體恢複,因為oracle會在關閉以前,把所有重做日志緩沖區和資料塊緩沖區内容寫到磁盤,是以關閉時是一緻的。

         oracle關閉資料檔案并終止背景程序,oracle的SGA被解除配置設定。

          是以有的時候看起來好象指令沒有運作一樣!

immediate

transactional 在擁護執行完目前事物後斷開連接配接,并不允許新的使用者連接配接資料庫。

abort 執行強行斷開連接配接并直接關閉資料庫。 前三種方式不回丢失使用者資料。第四種在不的已的情況下,不建議采用!以abort方式關閉的資料庫再次啟動時必須要進行恢複動作,這些恢複操作同樣是系統自動來完成的,需要的時間較長。在使用者執行完正在執行的語句後就斷開使用者連接配接,并不允許新使用者連接配接。一旦執行了這條指令,則将目前正在處理的sql語句馬上停止,然後将所有未送出的事務回退,并且不等待目前聯入資料庫的使用者斷開連接配接,而是由系統強行将各個聯接斷開。在下次啟動資料庫時要執行恢複動作,不過是由系統自動執行的,使用者不必去了解它。

繼續閱讀