Oracle下啓動與關閉

   在Oracle下啓動與關閉大致都是由3個步驟完成,在啓動時分別是:啓動實例、加載數據庫、打開數據庫;關閉時分別是:關閉數據庫、卸載數據庫、關閉Oracle實例。所以在Oracle因爲這種嚴謹的風格下,使得在平時可以根據不同的情況根據需要,以不同的模式啓動和關閉數據庫。在這裏就簡要的說一說Oracle下的啓動與關閉,在Oracle下啓動與關閉部分需要使用sysdba的身份來執行,最好是服務器上通過系統身份驗證的方式操作,如下Unix環境中:

[oracle@localhost ~]$ sqlplus / as sysdba

   首先,先來說一下Oracle中的啓動,啓動時所使用的參數如下:

STARTUP [nomount|mount|open|force|resetrict] [prife=filename]

Oracle在默認是會讀取運行用戶的家目錄下的初始化文件,所以如果使用prfile參數就是指定Oracle默認讀取的初始化文件,這個在以前有提過,在這裏就不做過多的說明,需要可以參看:http://blog.51cto.com/jim123/2053015

在啓動中有以下幾種模式啓動:

NOMOUNT 模式:表示啓動實例並不加載數據庫。在這種模式下表示啓動Oracle的內存結構和服務進程,期間並不加載數據庫也不打開數據文件,注意該模式需要有sysdba身份權限,該模式通常用於創建新數據庫或重建控制文件時使用

SQL> startup nomount
ORACLE instance started.

Total System Global Area 4275781632 bytes
Fixed Size                  2260088 bytes
Variable Size             905970568 bytes
Database Buffers         3355443200 bytes
Redo Buffers               12107776 bytes

MOUNT 模式:表示啓動實例、加載數據庫並保持數據庫的關閉狀態。在這種模式常常在進行數據維護時使用,如數據的恢復、更改數據庫的歸檔、數據庫的系統配置修改等等

SQL> startup mount
ORACLE instance started.

Total System Global Area 4275781632 bytes
Fixed Size                  2260088 bytes
Variable Size             905970568 bytes
Database Buffers         3355443200 bytes
Redo Buffers               12107776 bytes
Database mounted.

OPEN 模式:啓動實例、加載並打開數據庫。平時最常用的模式,要讓Oracle所有用戶正常使用而必須使用的模式,缺省使用startup不帶任何參數就是使用該模式,也可以使用open在其他模式下啓動相應的功能

SQL> startup
ORACLE instance started.

Total System Global Area 4275781632 bytes
Fixed Size                  2260088 bytes
Variable Size             905970568 bytes
Database Buffers         3355443200 bytes
Redo Buffers               12107776 bytes
Database mounted.
Database opened.

FORCE 模式:表示強制重啓數據庫,該模式具有一定的強制性,一般在其他模式已失效的情況下啓動

SQL> startup
ORACLE instance started.

Total System Global Area 4275781632 bytes
Fixed Size                  2260088 bytes
Variable Size             905970568 bytes
Database Buffers         3355443200 bytes
Redo Buffers               12107776 bytes
Database mounted.
Database opened.
SQL> startup force
ORACLE instance started.

Total System Global Area 4275781632 bytes
Fixed Size                  2260088 bytes
Variable Size             905970568 bytes
Database Buffers         3355443200 bytes
Redo Buffers               12107776 bytes
Database mounted.
Database opened.

RESETRICT 模式:表示啓動數據庫實例到限制模式,此時只有管理員和具有restricted session權限的用戶可以登錄數據庫,一般用於普通戶內部數據維護時使用

SQL> startup restrict
ORACLE instance started.

Total System Global Area 4275781632 bytes
Fixed Size                  2260088 bytes
Variable Size             905970568 bytes
Database Buffers         3355443200 bytes
Redo Buffers               12107776 bytes
Database mounted.
Database opened.

   在Oracle中有啓動就用關閉,下面就來說一說Oracle中的關閉,關閉時所使用的參數如下:

SHUTDOWN [normal|transactional|immediate|abort]

NORMAL 方式:正常的關閉方式,期間阻止任何新的連接、等待當前所有用戶的session主動斷開,等所有用戶的session斷開後關閉數據庫,做一個檢查點並關閉數據文件,重新啓動時不需要實例恢復

SQL> shutdown normal
Database closed.
Database dismounted.
ORACLE instance shut down.

TRANSACTIONAL 方式:事務關閉方式,期間阻止任何新的連接、不等待所有用戶的session斷開,等所有用戶的事務提交結束後,做一個檢查點並關閉數據文件,重新啓動時不需要實例恢復

SQL> shutdown transactional
Database closed.
Database dismounted.
ORACLE instance shut down.

IMMEDIATE 方式:顧名思義立即關閉,這種方式下能儘可能短的關閉數據庫,期間阻止任何新的連接、不等待所有用戶的session斷開,不等所有用戶的事務提交結束,未結束的事務rollback回滾,做一個檢查點並關閉數據文件,重新啓動時不需要實例恢復

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

ABORT 方式:終止關閉方式,期間阻止任何新的連接、不等待所有用戶的session斷開,不等所有用戶的事務提交結束,不做檢查點且沒有關閉數據文件,啓動時自動進行實例恢復,該方式具有一定的破壞性,有可能會丟失部分數據,在平時應該儘量避免使用

SQL> shutdown abort
ORACLE instance shut down.

在這裏需要注意的是如果是使用ABORT 方式關閉數據庫時,雖然說下一次重啓時會自動進行實例恢復,但是不能保障在重啓的期間出現其他問題所以如果使用ABORT 方式關閉數據庫後建議再用MOUNT模式啓動後再用IMMEDIATE方式關閉數據庫用來修復數據庫,如下

SQL> shutdown abort
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.

Total System Global Area 4275781632 bytes
Fixed Size                  2260088 bytes
Variable Size             905970568 bytes
Database Buffers         3355443200 bytes
Redo Buffers               12107776 bytes
Database mounted.
SQL> shutdown immediate
ORA-01109: database not open


Database dismounted.
ORACLE instance shut down.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章