ORACLE 庫緩存

庫緩存的命中率:

select 1-sum(GETHITS)/sum(GETS) from v$librarycache;
1-SUM(GETHITS)/SUM(GETS)
------------------------
       0.326853256123903

庫緩存的視圖

select * from v$db_object_cache;

關於遊標的視圖和參數

v$sql、v$sqlarea、v$open_cursor

在v$sql這個視圖中DISK_READS,BUFFER_GETS,CPU_TIME,ELAPSED_TIME這四個列在調優SQL語句時最爲重要。針對SQL語句性能問題,選擇調優物理讀,邏輯讀最多的,或最耗CPU時間的SQL語句進行調節,往往可以取得令人滿意的性能增長。

select * from (select t.SQL_FULLTEXT,t.DISK_READS,t.BUFFER_GETS,t.CPU_TIME,t.ELAPSED_TIME from v$sql t order by 2,3,4,5 desc) tt where rownum<=3;
SQL_FULLTEXT                                                                     DISK_READS BUFFER_GETS   CPU_TIME ELAPSED_TIME
-------------------------------------------------------------------------------- ---------- ----------- ---------- ------------
      select decode(open_mode, 'MOUNTED', 0,                                              0           0          0       507010
                               'RE                                                                                
select count(*), NULL, NULL from x$kccbp where bitand(bpext, 256) = 256 and bita          0           0          0       124805
select size_for_estimate,                      size_factor * 100 f,                       0           0          0        46673

select * from v$sqlarea;

v$sqlarea和v$sql的列幾乎是一模一樣的。在v$sqlarae中彙總了子游標的數據。

select * from v$sqlarea;

select * from v$sqltext;

v$sqltext視圖是顯示過長文本的,可以和v$sqlarea中的hash_value列進行連接,得到sql文本的具體值;

select * from v$sqltext t where t.HASH_VALUE=1133510698

每個會話最多打開的遊標的個數:

 show parameter open_cursor
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
open_cursors                         integer     300

select * from v$open_cursor;

v$open_cursor視圖專門用來查看當前會話打開的遊標信息。它只能查看當前花卉打開的遊標。

show parameter cursor_shar
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
cursor_sharing                       string      EXACT
 alter system set cursor_sharing=similar;
System altered

下面的參數控制着一個會話可以緩存多少個遊標

 show parameter session_cached_cursor
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
session_cached_cursors               integer     50

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章