2 Day DBA-管理Oracle例項-管理記憶體-關於記憶體管理

LuiseDalian發表於2014-01-27

記憶體管理包括根據資料庫的變化,維護Oracle記憶體結構的最佳大小。必須被管理的記憶體是SGAPGA記憶體。例項PGA記憶體是各個PGA記憶體分配的集合。從Oracle 11g開始可以讓資料庫完全管理SGAPGA記憶體。你只需指定資料庫例項使用的總記憶體,Oracle資料庫自動在SGAPGA的使用量上進行調整,來滿足程式的需要。這就叫做自動記憶體管理。在這種記憶體管理模式下,資料庫也自動調整每一個SGA組成部分和每個PGA的大小。

 

為了更為直接地控制SGA和例項PGA的大小,可以使用DC的記憶體指導頁面。在頁面中禁用自動記憶體管理,啟用自動共享記憶體管理。

 

設定自動共享記憶體管理後,可以設定SGA的目標和最大大小。Oracle資料庫會調整SGA的總大小接近於你指定的目標,並動態地調整所有的SGA組成部分的大小。

 

 

當設定了自動共享記憶體管理,也可以顯示地指定自動PGA記憶體管理。可以指定例項PGA的大小,然後資料庫會調整例項PGA的大小到指定的目標,並動態調整單個PGA

 

如果想完成控制每個SGA組成部分的大小,則可以使用記憶體指導頁面禁用所有的自動記憶體管理、自動共享記憶體管理,這叫人工共享記憶體管理。在這種模式下可以設定每個SGA組成部分大小,因此決定整個SGA的大小,然後需要根據不斷變化的基礎來手動調整每個SGA組成部分的大小。

 

手動共享記憶體管理是為有經驗的DBA設計的,在此模式下自動PGA記憶體管理仍然是可用的。

 

Oracle資料庫記憶體管理模式

記憶體管理模式

設定

Oracle資料庫自動調整

自動記憶體管理

例項總記憶體大小

例項最大記憶體大小(可選)

整個SGA大小

SGA各組成部分的大小

例項PGA大小

每個PGA大小

自動共享記憶體管理

自動PGA記憶體管理

SGA目標大小

SGA最大大小(可選)

例項PGA目標大小

SGA組成部分大小

每個PGA大小

手動共享記憶體管理

自動PGA記憶體管理

共享池大小

緩衝區大小

Java池大小

大池大小

例項PGA目標大小

每個PGA大小

 

注意:自動記憶體管理並不是在所有的平臺上都可用

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/17013648/viewspace-1076058/,如需轉載,請註明出處,否則將追究法律責任。

相關文章