圖例:在該圖中使用了下面引數名稱縮寫:
mt = memory_target
mmt = memory_max_target
st = sga_target
pat = pga_aggregate_target
sms = sga_max_size
memory_target 設定為非零值時:
假設設定了 sga_target 和 pga_aggregate_target,則會分別將它們當作 sga 大小和 pga 大小的下限值。
memory_target 能夠採用從 sga_target + pga_aggregate_target 到 memory_max_size 的值。
假設設定了 sga_target 但未設定 pga_aggregate_target,則仍會自己主動優化這兩個引數。
pga_aggregate_target 將初始化為 (memory_target-sga_target) 的值。
假設設定了 pga_aggregate_target 但未設定 sga_target。則仍會自己主動優化這兩個引數。sga_target 將初始化為 memory_target-pga_aggregate_target 和 sga_max_size(假設使用者設定了該引數)中的最小值,並自己主動優化子元件。
假設未設定不論什麼引數,則無需不論什麼下限值或預設值就可以自己主動優化這兩個引數。
會在初始化過程中,將server的總記憶體以固定的比率分配給 sga 和 pga。
依據該策略。將在啟動時為 sga 分配 60% 的記憶體,為 pga 分配 40% 的記憶體。
假設未設定 memory_target 或者將其顯式設定為 0(預設值為 0):
假設設定了 sga_target,則資料庫將僅自己主動優化 sga 的子元件的大小。pga 的自己主動優化與是否顯式設定 pag 無關。可是,不會自己主動優化整個 sga (sga_target) 和 pga (pga_aggregate_target)。即不自己主動增長或收縮。
假設 sga_target 和 pga_aggregate_target 都未設定,則將採用當前使用的策略;自己主動優化 pga。不自己主動優化 sga,須要顯式設定某些子元件的引數 (sga_target)。
假設僅設定了 memory_max_target,則使用初始化文字檔案進行手動設定時,memory_target 默覺得 0。
sga 和 pga 的自己主動優化行為默覺得 10g r2 的行為。
假設使用者未設定 sga_max_size。則當使用者設定了 memory_max_target 時,會在內部將 sga_max_size 設定為 memory_max_target(與使用者是否設定了 sga_target 無關)。
在初始化引數文字檔案裡。假設省略了 memory_max_target 行,幷包括了 memory_target 的值,則資料庫會自己主動將 memory_max_target 設定為 memory_target 的值。
假設省略 memory_target 行,幷包括 memory_max_target 的值,則 memory_target 引數默覺得 0。
啟動後。假設 memory_target 未超過 memory_max_target 值,則能夠將其動態更改為非零值。
oracle記憶體引數的設定依據
檢測buffer cache的命中率 select 100 a.pr b.prd c.prdlob d.cg e.dbg b.prd c.prdlob 100 from select value pr from v sysstat where name physical reads a,select...
Linux記憶體引數參考 與oracle相關
cat etc sysctl.conf oracle rac日記 p160 修改虛擬記憶體引數 vm.min free kbytes 409600 vm.vfs cache pressure 200 調整min free kbytes的目的是保持物理記憶體有足夠的空閒空間,防止突發性的換頁。swap...
oracle不同系統記憶體引數設定
針對不同 oltp與olap 的系統,以乙個例項的記憶體設定為基礎,一般來說 oracle 例項記憶體 物理記憶體 80 對於oltp系統 pga 例項記憶體 20 sga 例項記憶體 80 對於olap系統 pga 例項記憶體 50 sga 例項記憶體 50 混合型系統可以設定在二者之間 確定記憶...