如果你對Oracle體系結構中的基本概念,實例不是很了解的話,以下的文章就是對實例的相關內容的具體介紹,其實Oracle體系結構中的基本概念實例就是對Oracle數據庫操作的一種常用手段。
Oracle體系結構的基本概念,實例
通俗的講實例就是操作Oracle數據庫的一種手段.
數據庫實例也稱作服務器, 是用來訪問數據庫文件集的存儲結構及後台進程的集合.
一個數據庫可以被多個實例訪問(稱為真正的應用群集選項).
決定實例的大小及組成的各種參數或者存儲在名稱init.ora的初始化文件中, 或者隱藏在數據庫內部的服務器參數文件中. 通過spfile引用該文件, spfile存儲在spfile.ora文件中.
實例啟動時讀取初始化文件, 數據庫系統管理員可以修改該文件, 對初始化文件的修改只有在下次啟動時才有效.
Instance分為兩部分:
1: memory structure(內存結構)
memory structure分為兩部分:SGA(System Global Area)區是用於存儲數據庫信息的內存區,該信息為數據庫進程所共享。它包含Oracle 服務器的數據和控制信息,
它是在Oracle 服務器所駐留的計算機的實際內存中得以分配,如果實際內存不夠再往虛擬內存中寫。
包括:
- .share pool
- .datafase buffer cache
- .redo log buffer
- .other structures
PGA(Program Global Area)區包含單個服務器進程或單個後台進程的數據和控制信息,與幾個進程共享的SGA 正相反PGA 是只被一個進程使用的區域,PGA 在創建進程時分配在終止進程時回收
2: background process(後台進程)
包括: .PMON 負責在一個Oracle 進程失敗時清理資源
.SMON 檢查數據庫的一致性如有必要還會在數據庫打開時啟動數據庫的恢復
.DBWR 負責將更改的數據從數據庫緩沖區高速緩存寫入數據文件
.LGWR 將重做日志緩沖區中的更改寫入在線重做日志文件
.CKPT 負責在每當緩沖區高速緩存中的更改永久地記錄在數據庫中時,更新控制文件和數據文件中的數據庫狀態信息。