修改oracle記憶體佔用

Endv發表於2014-11-20

進入系統,

   

進入系統,

    # su oracle

    $cd $ORACLE_HOME

    $./sqlplus /nolog

    >connect / as sysdba;

    >show parameter sga; (檢視記憶體佔用情況)

      NAME                                   TYPE          VALUE
   ------------------------------------ ----------- -------------
   lock_sga                       boolean       FALSE
   pre_page_sga                   boolean       FALSE

   sga_max_size                   big integer 12000M
   sga_max_size                   big integer 12000M

  >alter system set sga_max_size=10000m scope=spfile;
  >alter system set sga_target=10000m scope=spfile;

  然後重啟資料庫,再show parameter sga就OK了。

 

如何使用oracle記憶體指導

  •  

oracle記憶體指導是oracle提供的一個資料庫記憶體管理服務。只有足夠的記憶體才能體啟用自動記憶體管理時, 資料庫將會自動設定記憶體的最佳分配方式。將不時更改記憶體分配以適應工作量的變化。

 

工具

  • oracle11g

方法/步驟

  1. 1

     

    開啟IE輸入控制檯網址(https://IP:1158/em/),用具有DBA許可權的使用者登陸oracle控制檯

     

  2. 2

     

    登陸控制檯後點選伺服器標籤下的記憶體指導進入記憶體指導視窗

     

  3. 3

    自動記憶體管理 :單擊啟用按鈕可轉到“啟用自動記憶體管理”頁,在此頁中可以使資料庫自動設定系統全域性區 (SGA) 和程式全域性區 (PGA) 之間記憶體的最佳分配方式。

    記憶體總大小:此值是啟用“自動記憶體管理”的情況下為“最大記憶體大小”欄位指定的值。這種情況下將顯示“禁用”按鈕。

    最大記憶體大小: MEMORY_MAX_TARGET 的此值是 MEMORY_TARGET 可以設定的最大值。最大記憶體大小不能小於最大 SGA 大小。如果需要修改此值,則需要退回此例項。

     

  4. 4

     

    自動共享記憶體管理: 單擊啟用按鈕可轉到“啟用自動共享記憶體管理”頁,在此頁中可以使資料庫自動設定各 SGA 元件上記憶體的最佳分配方式。 如果禁用“自動記憶體管理”並啟用“自動共享記憶體管理”,則“禁用”按鈕可用。共享池:包含庫快取記憶體、字典快取記憶體、並行執行訊息的緩衝區和控制結構。初始化引數 SHARED_POOL_SIZE 可以確定共享池的總大小。此引數的最小值在 32 位平臺上為 44MB,在 64 位平臺上為 88MB。增加此引數的值將增加為共享池保留的記憶體量。

     

    緩衝區快取記憶體:儲存從資料檔案中讀取的資料塊的副本。同時連線到例項上的所有使用者程式共享對資料庫緩衝區快取記憶體的訪問。

     

    大型池:為共享伺服器、Oracle 備份和還原操作、I/O 伺服器程式和並行執行訊息緩衝區的會話記憶體提供大記憶體分配的可選記憶體區。

     

    Java 池:指定 Java 池的大小,Java 記憶體管理器在執行時從該 Java 池分配大多數 Java 狀態。此記憶體中包括 Java 方法和類定義的共享記憶體中表示法以及呼叫結束時移植到 Java 會話空間的 Java 物件。    

     

    END
 
經驗內容僅供參考,如果您需解決具體問題 建議您詳細諮詢相關領域專業人士

相關文章