oracle wait event之db file sequential read
---會話1建立測試表並插入資料
SQL> create table t_network(a int);
Table created.
--構建索引,產生db file sequential read
SQL> create index idx_t_single on t_single(a);
Index created.
SQL> insert into t_network values(1);
1 row created.
SQL> commit;
Commit complete.
--會話 清空共享池,便於觀察 db file sequential read
SQL> alter system flush shared_pool;
System altered
SQL> select event,total_waits,time_waited,average_wait from v$session_event where sid=1 order by total_waits desc;
EVENT TOTAL_WAITS TIME_WAITED AVERAGE_WAIT
---------------------------------------------------------------- ----------- ----------- ------------
db file sequential read 139 99 0.71 --此等待事件增大,是因為會讀取與本話相關的一些字典表的資料
SQL*Net message to client 24 0 0
SQL*Net message from client 23 260608 11330.78
log file sync 5 0 0.09
Disk file operations I/O 4 0 0.06
events in waitclass Other 3 6 1.93
SQL*Net break/reset to client 2 0 0.01
enq: RO - fast object reuse 1 1 0.81
8 rows selected
---讀取表記錄
SQL> select * from t_single;
A
----------
1
2
---對比發現db file sequential read等待事件加大了
SQL> /
EVENT TOTAL_WAITS TIME_WAITED AVERAGE_WAIT
---------------------------------------------------------------- ----------- ----------- ------------
db file sequential read 142 104 0.73
SQL*Net message to client 26 0 0
SQL*Net message from client 25 263763 10550.52
log file sync 5 0 0.09
Disk file operations I/O 4 0 0.06
events in waitclass Other 3 6 1.93
SQL*Net break/reset to client 2 0 0.01
enq: RO - fast object reuse 1 1 0.81
8 rows selected
---表已在buffer cache中
SQL> /
A
----------
1
2
---對比發現如表已在buffer cache則db file sequential read不會增加
SQL> /
EVENT TOTAL_WAITS TIME_WAITED AVERAGE_WAIT
---------------------------------------------------------------- ----------- ----------- ------------
db file sequential read 142 104 0.73
SQL*Net message to client 28 0 0
SQL*Net message from client 27 280384 10384.58
log file sync 5 0 0.09
Disk file operations I/O 4 0 0.06
events in waitclass Other 3 6 1.93
SQL*Net break/reset to client 2 0 0.01
enq: RO - fast object reuse 1 1 0.81
8 rows selected
小結:
1,db file sequential read即伺服器程式發出讀取表記錄所屬的資料塊時,如不在buffer cache,則呼叫io自物理磁碟把對應的資料塊讀取到buffer cache,伺服器程式等待這個io動作完成的過程
2,所讀取的資料塊不在buffer cache而在物理磁碟上
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-761570/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- db file sequential read wait event等待事件之二AI事件
- oracle之 db file sequential read等待事件優化思想Oracle事件優化
- 解決db file sequential read與db file scattered read
- db file sequential read等待事件事件
- 【等待事件】db file sequential read事件
- db file sequential read 詳解
- 【TUNE_ORACLE】等待事件之IO等待“db file sequential read”Oracle事件
- db file sequential read及優化優化
- db file scattered read與事件db file sequential read相類似(轉)事件
- 等待事件db file sequential read、db file scattered read和direct read的區別事件
- db file sequential read事件的發生事件
- 詳解 db file sequential read 等待事件事件
- High Waits on 'Db File Sequential Read'AI
- data file int write和db file sequential read個人想法
- Waiting Too Frequently for 'db file sequential read'AI
- 何時會發生db file sequential read等待事件?事件
- Oracle:db file scattered readOracle
- 【kingsql分享】何時出現生db file sequential read等待事件SQL事件
- 轉eygle大師_wait event_db file init writeAI
- oracle等待事件2構造一個DB File Sequential Read等待事件和構造一個Direct Path ReadOracle事件
- 等待事件--db file sequential reads事件
- 同一個資料塊的db file sequential read,說明了什麼?
- Wait event:read by other sessionAISession
- control file sequential read等待事件事件
- 【TUNE_ORACLE】等待事件之IO等待“db file scattered read”Oracle事件
- 【蓋國強】Oracle Wait Event:Data file init writeOracleAI
- 事件:db file scattered read事件
- db file scattered read等待事件事件
- 【等待事件】db file scattered read事件
- tatspack之十二-db file scattered read-DB檔案分散讀取
- 非空閒等待事件之:db file scattered read(轉)事件
- Oracle中db_file_multiblock_read_count引數探究OracleBloC
- oracle wait event 等待事件OracleAI事件
- Oracle Wait Event - TuningOracleAI
- direct path read wait event 的處理辦法AI
- I/O上的等待事件 —— control file sequential read/control file parallel write事件Parallel
- 消除11.2上的db file parallel readParallel
- oracle 10g的db_file_multiblock_read_count引數Oracle 10gBloC