熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

Oracle11g新特性之AutoMemoryManagement

2013-11-13 15:35:38  來源: Oracle 

  Auto Memory Management是Oracleg提出來的一個新特性在最新的Oracleg數據庫中又得到了進一步的發展通過使用自動內存管理Oracle數據庫中的PGA和SGA內存之間可以互相轉換根據當前的工作負載來自動設定Oracle內存區域中的PGA和SGA的大小這種間接的內存轉換依賴於操作系統的共享內存的釋放機制來獲得內部實例的調優目前這種技術可以應用於Linux Solaris HPUX AIX 和Windows等操作系統上

  首先我們來回顧下Oracleg的自動內存管理特性在Oracleg的數據庫中只有SHARED_POOL_SIZEDB_CACHE_SIZELARGE_POOL_SIZEJAVA_POOL_SIZESTREAMS_POOL_SIZE五個SGA組件可以被自動調整其中PGA的最大值由初始化參數PGA_AGGREGATE_TARGET決定SGA的最大值由初始化參數SGA_TARGET決定

  在Oracleg數據庫中使用自動內存管理特性不再需要設定參數PGA_AGGREGATE_TARGET和SGA_TARGET因為這兩個參數都已經被修改成自動調優的除非想指定PGA和SGA的最小值才需要設定這兩個參數在Oracleg數據庫中則需要設置一個叫做MEMORY_TARGET的初始化參數這個參數是指整個Oracle實例所能使用的內存大小包括PGA和SGA的整體大小在MEMORY_TARGET的內存大小之內PGA和SGA所用的內存可以根據當前負載情況自動相互轉換如果當初始設定的MEMORY_TARGET的內存不夠當前數據庫使用的時候Oracleg還提供了另外一個初始化參數MEMORY_MAX_TARGET當原始設定的內存不夠使用的時候可以手工來動態 調節MEMORY_TARGET的大小但是不允許超過MEMORY_MAX_TARGET的值下面這張圖簡單明了的描述出了Oracleg數據庫內存大小的設定參數

  

  此外Oracleg數據庫還提供了幾個用於監控自動內存管理的視圖

  V$MEMORY_DYNAMIC_COMPONENTS描述當前所有內存組件的狀態

  V$MEMORY_RESIZE_OPS循環記錄最後次的SGA大小調整請求

  X$KMGSTFR:循環記錄最後次的SGA的轉換地址

  _MEMORY_MANAGEMENT_TRACING=:對於所有的內存轉換調整行為均記錄保存為跟蹤文件


From:http://tw.wingwit.com/Article/program/Oracle/201311/16976.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.