Oracle 記憶體結構(一)
Oracle 在記憶體中儲存以下資訊:
1、程式程式碼
2、已連線的會話(session)資訊,包括當前活動的(active)及非活動的會話
3、程式執行過程中所需的資訊(例如,某個查詢的狀態)
4、需要在 Oracle 程式間共享並進行通訊的資訊(例如,鎖資訊)
5、資料檔案內資料的快取(例如,資料塊(data block)及重做日誌條目(redo log entry))
Oracle 中的基本記憶體結構包括:
系統全域性區(System Global Area,SGA),此區域由所有的服務程式(server process)和後臺程式(background process)共享。
程式全域性區(Program Global Areas,PGA),此區域是每個服務程式和後臺程式所私有的;即每個程式都有一個 屬於自己的 PGA。
軟體程式碼區(software code area)。
1 、初始化引數 SGA_MAX_SIZE
SGA 中包含了多個記憶體元件(component),每一元件都可以被看作為一個記憶體池,用於滿足特定型別的記憶體分配請求。
所有 SGA 元件都是以預設的粒度(granule)為單位進行記憶體的分配與回收的。Oracle 資料庫通過記錄每個 SGA 元件使用的粒度單位的數量來掌握整個 SGA 的記憶體使用情況。
粒度單位的大小是由整個 SGA 的容量決定的。在大多數平臺下,當 SGA 的容量小於 1GB 時,一個粒度單位為 4MB;當 SGA 的容量大於 1GB 時,一個粒度單位則為 16MB。但也有些平臺例外。
A 所使用記憶體的上限由 SGA_MAX_SIZE 初始化引數決定。在例項初始化時,如果初始化引數檔案(initialization parameter file)或伺服器引數檔案(server parameter file)中 SGA_MAX_SIZE 的值小於 Oracle 為 SGA 各元件分配的記憶體之和,Oracle 將忽略 SGA_MAX_SIZE 引數。
為了優化系統效能,整個 SGA 的容量應與實際記憶體數量相符。如果因 SGA 過大而需要使用虛擬記憶體(virtual memory)時,資料庫的系統效能將顯著下降。
2 、共享全域性區自動管理
在 Oracle 10g 中,DBA 只需使用 SGA_TARGET 引數指定例項可用的 SGA 總量即可,Oracle 能夠自動地將記憶體分配給 SGA 的各個子元件,以便提高記憶體的使用效率。
SGA_TARGET 引數涵蓋了 SGA 的全部記憶體,不要動態地設定 SGA_TARGET 引數。這個引數只能在資料庫啟動時設定。
少量的 SGA 記憶體元件容量是不能自動調整的。當應用需要時,DBA 要顯式地設定這些元件的容量。這樣的記憶體元件有:
保留/回收快取區(Keep/Recycle buffer cache)(由 DB_KEEP_CACHE_SIZE 和 DB_RECYCLE_CACHE_SIZE 引數控制)
非標準容量資料塊使用的快取(由 DB_nK_CACHE_SIZE,n = {2,4,8,16,32} 引數控制)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25323853/viewspace-687415/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【基礎篇記憶體結構】oracle10g記憶體結構(一)記憶體Oracle
- oracle 記憶體結構Oracle記憶體
- Oracle體系結構之-記憶體結構Oracle記憶體
- Oracle記憶體體系結構Oracle記憶體
- oracle 記憶體結構(二)Oracle記憶體
- ORACLE 記憶體結構理解.Oracle記憶體
- oracle 例項記憶體結構Oracle記憶體
- oracle記憶體結構與管理Oracle記憶體
- Oracle體系結構:記憶體結構和程式結構(轉)Oracle記憶體
- Oracle體系結構之記憶體結構(SGA、PGA)Oracle記憶體
- oracle 記憶體結構具體解釋Oracle記憶體
- Oracle記憶體結構(一)----SGA的區域資訊Oracle記憶體
- Oracle OCP(39):Database 記憶體結構OracleDatabase記憶體
- Oracle中Buffer Cache記憶體結構Oracle記憶體
- Oracle記憶體結構研究-PGA篇Oracle記憶體
- Oracle記憶體結構研究-SGA篇Oracle記憶體
- 理解JVM(一):記憶體結構JVM記憶體
- 【翻譯】記憶體結構 (一)記憶體
- 記憶體結構記憶體
- Oracle例項的程式結構和記憶體結構Oracle記憶體
- Oracle記憶體結構(一)----SGA的區域資訊(轉)Oracle記憶體
- Oracle面試寶典-記憶體結構篇Oracle面試記憶體
- Oracle - 資料庫的記憶體結構Oracle資料庫記憶體
- JVM學習(一)——記憶體結構JVM記憶體
- ORACLE例項的程式結構和記憶體結構(轉)Oracle記憶體
- [Virtualization]ESXi體系結構與記憶體管理(一)體系結構記憶體
- PostgreSQL:記憶體結構SQL記憶體
- JVM記憶體結構JVM記憶體
- Memory Dumps(ORACLE記憶體結構轉儲)Oracle記憶體
- oracle記憶體結構:SGA的區域資訊Oracle記憶體
- Oracle記憶體結構:ProcessMemory的詳細資訊Oracle記憶體SSM
- Oracle記憶體結構(四)----如何獲得Oracle各記憶體段的內部資訊(轉)Oracle記憶體
- 結構體記憶體對齊結構體記憶體
- Oracle記憶體詳解之一 整體架構Oracle記憶體架構
- 調節記憶體結構記憶體
- DBA_Oracle基本體系記憶體和程式結構(概念)Oracle記憶體
- 第一章 JVM記憶體結構JVM記憶體
- MySQL整體架構與記憶體結構MySql架構記憶體