enq: SQ - contention 等待事件處理辦法
故障描寫:
2014-3-24
RAC資料庫,應用系統執行異常,登入不進
資料庫資訊檢視:
後臺CPU飆升厲害,資源使用過大。發現兩個節點鎖等待超過1100,並且還在不斷增長
解決辦法:
部分外來程式的kill,鎖等待消除。
分析報告:
我們可以透過分析故障前後的資料庫執行狀態來分析問題,比如:
故障時的資料庫狀態如下:
故障處理後的資料庫狀態:
故障發生時,p_pub_user_online_curd在54分鐘被執行了83229次,相當於每秒26次;
故障處理後,p_pub_user_online_curd在 70分鐘執行了54562次,相當於每秒13次。
透過比較可以看到,故障時的系統負載比非故障時提高了一倍。
因為p_pub_user_online_curd(:1, :2, :3)儲存過程,涉及到序列SQ_MENULOG和SQ_PUBLOGS的存取,由於序列的cache預設為20,所以在高併發的情況下,會導致enq:SQ-contention,大量的序列等待導致伺服器cpu飆高。這個從AWR報告中也有體現:
序列衝突引起的等待時間佔用了資料庫90%以上的CPU時間。
解決措施
1、 降低儲存過程p_pub_user_online_curd呼叫的頻率;
2、 將SQ_MENULOG和SQ_PUBLOGS的快取從20調整1000,執行語句如下:
alter sequence SQ_MENULOG cache 1000;
alter sequence SQ_PUBLOGS cache 1000;來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28869493/viewspace-1128506/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【效能調整】等待事件 enq: SQ - contention事件ENQ
- enq: TX - row lock contention等待事件處理ENQ事件
- enq: WF - contention等待事件ENQ事件
- enq: CF - contention 等待事件ENQ事件
- enq: TS - contention 等待事件ENQ事件
- 等待事件之enq: HW - contention事件ENQ
- enq:TM-contention事件等待ENQ事件
- 消除 enq: DX - contention 等待事件ENQ事件
- zt_Oracle enq: TX contention 和 enq: TM contention 等待事件OracleENQ事件
- enq: SQ - contention" waits in RACENQAI
- Oracle等待事件之enq: TM – contentionOracle事件ENQ
- 等待事件enq: TX - row lock contention事件ENQ
- oracle等待事件之enq: CF – contentionOracle事件ENQ
- 【等待事件】-enq: TX - row lock contention事件ENQ
- 故障排除 | enq:TX - index contention等待事件ENQIndex事件
- 等待事件enq TX row lock contention分析事件ENQ
- 如何診斷等待事件 enq: HW - contention事件ENQ
- 故障處理】佇列等待之enq: US - contention案例佇列ENQ
- 【故障處理】佇列等待之enq: US - contention案例佇列ENQ
- 【故障處理】佇列等待之enq IV - contention案例佇列ENQ
- enq:SQ-contention / DFS lock handle(SV)ENQ
- 事務上的等待事件 —— enq: UL - contention事件ENQ
- enq: TX - index contention等待ENQIndex
- oracle 11.2.0.4 rac叢集等待事件enq: TM - contentionOracle事件ENQ
- enq: TM - contention TM 等待事件的原因及模擬ENQ事件
- [20161208]等待事件enq: HW - contention事件ENQ
- [20140311]等待事件enq HW - contention事件ENQ
- enq: HW - contention 問題的處理ENQ
- [20220518]enq FU - contention等待事件.txtENQ事件
- 大量insert引起的enq: HW - contention等待ENQ
- 關於HW-contention等待的處理
- awr報告中顯示enq: TM - contention 處理方法ENQ
- Oracle優化案例-系統切換引起的enq: SQ - contention(二十八)Oracle優化ENQ
- 資料庫出現很高的enq: DX - contention 等待資料庫ENQ
- enq: TX - index contention基礎理論ENQIndex
- enq: US - contentionENQ
- enq: HW - contentionENQ
- enq: TM - contentionENQ