(轉):學習Oracle動態效能表-(15)-V$DB_OBJECT_CACHE

xz43發表於2012-09-27

  本檢視提供物件在library cache(shared pool)中物件統計,提供比v$librarycache更多的細節,並且常用於找出shared pool中的活動物件。

v$db_object_cache中的常用列:OWNER:物件擁有者
NAME:物件名稱
TYPE:物件型別(如,sequence,procedure,function,package,package body,trigger)
KEPT:告知是否物件常駐shared pool(yes/no),有賴於這個物件是否已經利用PL/SQL 過程DBMS_SHARED_POOL.KEEP“保持”(永久固定在記憶體中)
SHARABLE_MEM:共享記憶體佔用
PINS:當前執行物件的session數
LOCKS:當前鎖定物件的session數

瞬間狀態列:
下列列保持物件自初次載入起的統計資訊:
LOADS:物件被載入次數。

示例:
1.shared pool執行以及記憶體使用總計
下列查詢顯示出shared pool記憶體對不同類別的物件
同時也顯示是否有物件透過DBMS_SHARED_POOL.KEEP()過程常駐shared pool。
SELECT type, kept, COUNT(*), SUM(sharable_mem)
FROM V$DB_OBJECT_CACHE
GROUP BY type, kept;

2.透過載入次數找出物件
SELECT owner, name sharable_mem, kept, loads
FROM V$DB_OBJECT_CACHE
WHERE loads > 1 ORDER BY loads DESC;

找出使用的記憶體超過10M並且不在常駐記憶體的物件。
SELECT owner, name, sharable_mem, kept
FROM V$DB_OBJECT_CACHE
WHERE sharable_mem > 102400 AND kept = 'NO'
ORDER BY sharable_mem DESC;

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

相關文章