_use_adaptive_log_file_sync

531968912發表於2017-05-03
在11gr2以前寫日誌緩衝區到檔案方式是透過Post/wait方式,在11gr2開始增加了Polling的方式,在11.2.0.3以前預設還是採用Post/wait方式,
11.2.0.3開始預設是兩種方式自動切換。它是透過隱含引數_use_adaptive_log_file_sync進行設定,當值為true時開啟自動切換模式。
NAME                          VALUE   ISDEFAULT ISMOD      ISADJ
----------------------------- ------- --------- ---------- -----
_use_adaptive_log_file_sync   TRUE    TRUE      FALSE      FALSE


Post/wait:使用者會話被動等待LGWR通知redo寫入到log file完畢,這種方式響應速度比較快。
若cpu空閒時採用這種方式可以體驗到更好的響應時間。
Polling:使用者會話主動監測LGWR是否完成寫入。這種方式比Post/wait方式響應速度慢,LGWR
不直接把完成的訊息通知到很多使用者會話,可以節約CPU資源。若cpu繁忙時採用這種方式可以
降低cpu資源的消耗。


在lgwr日誌中可以看到切換的資訊
Log file sync switching to polling
Log file sync switching to post/wait


查詢當前log file sync的方式
SQL> select name,value from v$sysstat where name like 'redo sync%'
NAME                                                           VALUE
-------------------------------------------------- -----------------
redo synch time                                                 4644
redo synch time (usec)                                      46422779
redo synch writes                                                 15
redo synch long waits                                              7
redo synch poll writes                                             0
redo synch polls                                                   0



查詢(_use_adaptive_log_file_sync)方式:
select a.ksppinm name, b.ksppstvl value, a.ksppdesc description
from sys.x$ksppi a, sys.x$ksppcv b
where a.indx = b.indx and a.ksppinm like '\_%adaptive\_log%' escape '\'
order by name;

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