control file parallel write等待事件
Control file parallel write事件,控制檔案的寫入等待,控制檔案中記錄了db的scn,資料檔案的scn,當前redo log號,歸檔日誌資訊,備份集資訊等等,很多資訊都需要定期更新,很有可能會引起control file parallel write事件。
1) 日誌檔案過小,或者dml操作過多,導致日誌切換太快,每次日誌切換都需要進行檢查點,記錄相應的日誌切換的資訊。
2) 增量檢查點發生,也會記錄scn資訊和檢查點到控制檔案中,10g的自動增量檢查點會記錄也會更新一次控制檔案中記錄的RBA資訊。
3) nologging下頻繁更新資料檔案,對資料檔案在nologging選項下執行修改工作時,為了修改unrecoverable scn需要更新controlfile。(關於這個情況個人沒有理清!)
4)當然磁碟IO問題
可以考慮把controlfile分開儲存在磁碟上。
如何判斷什麼程式引起的control file parallel write事件,其實之前一直用v$session_wait檢視當前的session的等待,這裡可以用v$session_event檢視首先檢視出導致control file parallel write等待事件的sid,然後對應v$session找到paddr,接著對應v$process找到導致時間的後臺程式,很多情況下我們會發現兩個程式,LGWR和CKPT,日誌切換和檢查點是導致control file parallel write等待事件最主要的原因,相應的解決方法了就是增加日誌組和日誌大小,對controlfile分開儲存到磁碟等。
記錄db啟動到現在的等待事件的資訊,其中的total_waits等待次數,time_waited等待事件,average_wait平均等待一次的時間,這些度量參考值在很多檢視中都會用到,理解其中的意思。
SQL> select event,total_waits,total_timeouts,time_waited,average_wait from v$system_event where event='control file parallel write';
EVENT TOTAL_WAITS TOTAL_TIMEOUTS TIME_WAITED AVERAGE_WAIT
-------------------- ----------- -------------- ----------- ------------
control file paralle 4966 0 25830 5.2
l write
SQL> select sid from v$session_event where event='control file parallel write';
SID
----------
20
33
34
35
44
45
6 rows selected
SQL> select paddr from v$session where sid in (20,33,34,35,44,45);
PADDR
--------
33D34610
33D38170
33D34C00
33D351F0
33D304C0
33D2FED0
6 rows selected
SQL> select program from v$process
where addr in ('33D34610','33D38170','33D34C00','33D351F0','33D304C0','33D2FED0');
2 /
PROGRAM
----------------------------------------------------------------
PSEUDO
ORACLE.EXE (PMON)
ORACLE.EXE (PSP0)
ORACLE.EXE (MMAN)
ORACLE.EXE (DBW0)
ORACLE.EXE (LGWR)
ORACLE.EXE (CKPT)
ORACLE.EXE (SMON)
ORACLE.EXE (RECO)
ORACLE.EXE (CJQ0)
ORACLE.EXE (MMON)
ORACLE.EXE (MMNL)
......
看來這些程式都有可能引起control file parallel write等待,不過要申明的是這個是本機的測試庫,在一個繁忙的生產系統中我發現引起control file paralle write等待事件的都是後臺程式ckpt和lgwr,出現此等待事件很正常,但是如果影響了db效能就需要酌情調整了,跟控制檔案相應的還有control file sequential read和control file heartbeat等待事件。
[@more@]來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25362835/viewspace-1057888/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle db file parallel write 和 log file parallel write 等待事件 說明OracleParallel事件
- I/O上的等待事件 —— control file sequential read/control file parallel write事件Parallel
- control file parallel write事件小記Parallel事件
- control file parallel writeParallel
- 【TUNE_ORACLE】等待事件之IO等待“db file parallel write”Oracle事件Parallel
- 【TUNE_ORACLE】等待事件之日誌等待“log file parallel write”Oracle事件Parallel
- Oracle之 等待事件log file sync + log file parallel write (awr優化)Oracle事件Parallel優化
- log file sync(日誌檔案同步) 與 Log file parallel write 等待事件Parallel事件
- db file parallel writeParallel
- [轉載]Oracle等待事件Data file init writeOracle事件
- control file sequential read等待事件事件
- redo的等待log file sync和log file parallel write和redo size設定Parallel
- log file sync 和 log file parallel writeParallel
- 0322理解db file parallel read等待事件2Parallel事件
- 0316理解db file parallel read等待事件Parallel事件
- oracle等待事件3構造一個Direct Path write等待事件和構造一個Log File Sync等待事件Oracle事件
- [20130409]Data file init write等待事件.txt事件
- ORACLE等待事件:direct path writeOracle事件
- log file sync等待事件事件
- 【等待事件】log file sync事件
- LOG FILE SWITCH等待事件事件
- log file sync" 等待事件事件
- 【TUNE_ORACLE】等待事件之IO等待“direct path write”Oracle事件
- "log file sync"等待事件-2事件
- "log file sync"等待事件-1事件
- 等待事件 log file sync 小解事件
- 【TUNE_ORACLE】等待事件之IO等待“direct path write temp”Oracle事件
- [20210315]理解db file parallel read等待事件3.txtParallel事件
- [20210315]理解db file parallel read等待事件4.txtParallel事件
- db file scattered read等待事件事件
- db file sequential read等待事件事件
- 【等待事件】db file sequential read事件
- 【等待事件】db file scattered read事件
- 等待事件:Disk file operations I/O事件
- 等待事件--db file scattered reads事件
- 等待事件--db file sequential reads事件
- log file sync等待事件總結事件
- log file switch相關等待事件事件