模擬cache buffers chains與library cache pin等待事件

parknkjun發表於2014-04-09
一、建立測試表
JZH@ORCL>create table test (id int,name varchar2(30));
Table created.

二、插入資料

JZH@ORCL>insert into test values(1,'AAAA');
1 row created.

三、查詢資料
JZH@ORCL>select rowid,id,name from test;
ROWID                      ID NAME
------------------ ---------- ------------------------------
AAAMlkAAFAAAAAXAAA          1 AAAA

四、執行匿名塊
會話一:
JZH@ORCL>declare
  2    id number;
  3      begin
  4     for i in 1..10000000 loop
  5      select id into id from test where rowid='AAAMlkAAFAAAAAXAAA';
  6     end loop;
  7     end;
  8      /
會話二也執行一次:

JZH@ORCL>declare
  2    id number;
  3      begin
  4     for i in 1..10000000 loop
  5      select id into id from test where rowid='AAAMlkAAFAAAAAXAAA';
  6     end loop;
  7     end;
  8      /

五、查詢v$session等待事件

SYS@ORCL>select sid,event,p1raw from v$session where wait_class<>'Idle';

       SID EVENT                                                            P1RAW
---------- ---------------------------------------------------------------- ----------------
       144 latch: library cache                                             00000000A55E9E30
       154 latch: cache buffers chains                                  00000000A8AF2500
       159 SQL*Net message to client                                 0000000062657100

等待事件出來了、下一步深入研究這兩個等待事件!

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

相關文章