ORACLE-體系結構
1、oracle記憶體結構:sga + pga ;
2、oracle資料庫體系結構:
3、oracle工作原理:
a.在資料庫伺服器上啟動oracle例項;
b.應用程式在客戶端的使用者程式中執行,啟動oralce網路服務驅動器與伺服器建立連線;
c.伺服器執行oralce網路服務驅動器,建立專用的伺服器程式執行使用者程式;
d.客戶端提交事務;
e.伺服器端程式獲取SQL語句,檢查共享池中是否有相同SQL語句,如果有,伺服器程式再檢查使用者許可權,反之則分配新的SQL共享區分析並執行SQL語句;
f.伺服器從資料檔案或SGA中獲得所需資料;
g.伺服器程式再sga中更新資料,DBWN將更新過的資料寫入磁碟,程式LGWR在重做日誌中記錄事務;
h.事務成功,伺服器程式傳送訊息到應用程式中.
4、oracle伺服器:
a.oralce伺服器由資料庫和例項組成;
b.資料庫是一個資料的集合,存放在資料檔案中;
c.例項:記憶體結構 + 後臺程式;
5、oracle資料庫例項:
a.oracle例項由記憶體結構和後臺程式組成;
b.啟動oracle資料庫例項,即分配記憶體、啟動後臺程式;
c.oracle記憶體結構:SGA和PGA
d.oralce例項後臺程式:SMON、PMON、DBWR、LGWR、CKPT等;
6、SGA(System Global Area):系統全域性區
系統全域性區(System Global Area,SGA)是包含了一個oralce例項所擁有的資料及控制資訊的共享記憶體區域.oralce在例項啟動時分配SGA空間,並在例項關閉時回收,每個例項都有自己的SGA.
SGA包括:共享池(shared pool)、資料庫緩衝區(Database Buffer)、重做日誌緩衝區(Redo Log Buffer)、大池、Java池、Stream池.
a.共享池(shared pool)中包含的是共享的記憶體結構,例如共享sql區(shared sql area). 處理所有提交到資料庫的sql語句都要用到共享sql區. 共享sql區中包含了語句對應的解析樹(parse tree)、執行計劃(execution plan)等資訊. 一個共享sql區可以被提交了相同sql語句的多個應用程式使用,以便節約記憶體空間.
b.資料庫緩衝區(Database Buffer)儲存最近使用的資料塊.一個例項中全部的資料庫緩衝區被稱為"資料快取".資料快取同時包含修改過和沒修改的資料塊.如果最近使用的資料被放在了記憶體中,對磁碟I/O的需求就減少了,因此效能也得到提高.
c.重做日誌緩衝區(Redo Log Buffer)使用者儲存重做條目(redo entry)--用於記錄資料庫變化的日誌。重做日誌緩衝區中儲存的條目將被寫入聯機的重做日誌(online redo log)檔案中,以備份資料庫恢復使用。重做日誌檔案的容量是固定的。
d.大池:為了進行大的後臺程式操作而分配的記憶體空間,主要指備份恢復、大型IO操作、並行查詢等。
e.Stream池:為了stream應用而分配的記憶體空間
f.Java池:為java應用而分配的記憶體空間
7、PGA(program global area,PGA) 程式全域性區
PGA(program global area,PGA) 程式全域性區是供服務程式(server process)儲存資料及控制資訊記憶體區域。這是一種在服務程式啟動時由oracle建立的非共享的記憶體區。只有服務程式才能訪問屬於它的PGA,而對PGA的讀寫操作是由oralce程式碼實現的。一個oralce例項中為所有服務程式分配的全部PGA記憶體也被稱為此例項的合計PGA。
8、後臺程式
a.PMON 程式監控程式,監控使用者程式是否正常
1)清理出現故障的程式
2)釋放所有當前掛起的鎖定
3)釋放故障程式使用的資源
b.SMON 系統監控程式,實時監控oralce狀況
1)在例項失敗之後,重新開啟資料庫自動恢復例項
2)負責清除系統中不再使用的臨時段
3)整理資料檔案的自由空間,將相鄰區域結合起來
c.DBWR 資料寫入程式
1)管理資料緩衝區,將最近使用過的塊保留在記憶體中
2)將修改後的緩衝區資料寫入資料檔案中
d.LGWR 日誌寫入程式
1)負責將日誌緩衝區中的日誌資料寫入日誌檔案
2)系統有多個日誌檔案,該程式以迴圈的方式將資料寫入檔案
e.CKPT 檢查點程式
1)為了防止例項崩潰,為了儘快進行例項恢復的程式
2)檢查點包括兩種:完全檢查點、增量檢查點
9、物理結構
a.主要物理檔案可分為三類:
資料檔案:資料檔案用於儲存資料,如表、索引資料等
控制檔案:控制檔案是記錄資料庫物理結構的二進位制檔案
日誌檔案:記錄對資料庫所有的修改資訊,用於故障恢復
注:丟失以上任意一種檔案資料庫都無法正常執行,需要程式介質恢復。
b.非主要物理檔案:引數檔案、密碼檔案、告警和跟蹤檔案...
10、表空間:
a.表空間是資料庫中最大的邏輯單位,一個oralce資料庫至少包含一個表空間
b.每個表空間都由一個或多個資料檔案構成,一個資料檔案只能與一個表空間關聯
c.表空間的大小等於構成表空間的資料檔案的大小之和
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28939273/viewspace-1061442/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle體系結構之-記憶體結構Oracle記憶體
- 【PG體系結構】PG體系結構簡單說明
- Oracle體系結構:記憶體結構和程式結構(轉)Oracle記憶體
- [Virtualization]ESXi體系結構與記憶體管理(一)體系結構記憶體
- Oracle體系結構之-物理結構Oracle
- BeanFactory體系結構Bean
- 【JVM體系結構】JVM
- Servlet 體系結構Servlet
- MySQL 體系結構MySql
- MongoDB 體系結構MongoDB
- 前端結構體系前端結構體
- 【EJB體系結構】
- postgresql體系結構SQL
- 體系結構1
- oracle體系結構Oracle
- SQLite體系結構SQLite
- ORACLE體系結構小結Oracle
- oracle體系結構總結Oracle
- 3:Oracle體系結構(邏輯結構)Oracle
- Oracle體系結構之記憶體結構(SGA、PGA)Oracle記憶體
- HDFS的體系結構
- oracle體系結構(轉)Oracle
- 1、JVM體系結構JVM
- MySQL 一 體系結構MySql
- PostgreSQL體系結構概述SQL
- android 體系結構Android
- Oracle體系結構梳理Oracle
- Oracle 體系結構圖Oracle
- oracle體系結構(1)Oracle
- oracle體系結構(2)Oracle
- oracle體系結構(3)Oracle
- 軟體體系結構評估
- Oracle記憶體體系結構Oracle記憶體
- 指令集體系結構_計算機體系結構:指令程式碼計算機
- 作業系統體系結構作業系統
- 指令集結構與微體系結構
- Oracle體系結構部落格連結Oracle
- Postgresql資料庫體系結構-程式和記憶體結構SQL資料庫記憶體