執行計劃問題導致處理速度時快時慢的問題
今天百貨那邊同事反映,在前臺銷售商品時,出現了時快時慢的情況,一個小票的列印時間,從零點幾秒到100多秒不等,如果哪個顧客趕上了,可能買一包泡麵都會等2分鐘。這個情況已經持續了兩三天了
由於此係統前段時間由單機轉為了RAC,同事懷疑因為RAC的配置或是IO問題導致了這種情況。確實,對於非資料庫的很多情況,IO負載的輕重變化確實容易導致時快時慢的現象。
做AWR麻煩,直接登入到資料庫中看,有一個SQL在v$session中比較容易出現db sequence read等待,直接看v$sql,有兩個child number,其中有一個child_number等於3的SQL buffer_gets非常高,看執行計劃,選擇了一個多列主鍵索引的跳躍掃描。
看到這個,也就有解決方案了,改程式來不及,直接在作業系統禁用跳躍掃描
alter system set '_optimizer_skip_scan_enable' = false;
出現這個情況的原因,應該是統計資訊發生了變化(系統設定定時任務,3天重新收集統計資訊)導致執行計劃發生了改變。
[@more@]來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/19423/viewspace-1055259/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORACLE DML執行計劃頻繁變更導致業務響應極慢問題的處理Oracle
- 執行計劃的偏差導致的效能問題
- Oracle日常問題-臨時表過多導致exp速度慢Oracle
- 完美的執行計劃導致的效能問題
- mysql的執行計劃快取問題MySql快取
- mysql 執行一段時間比較慢問題處理經過MySql
- 執行計劃沒變,執行時快時慢是怎麼回事?
- 執行計劃變化導致CPU負載高的問題分析負載
- 執行計劃中的COLLECTION ITERATOR PICKLER FETCH導致的效能問題
- sqlplus 登入時快時慢問題診斷SQL
- 時區問題導致時間相差8個小時
- 執行petstore時出的問題
- RLM$SCHDNEGACTION 執行導致負載問題負載
- JSF的outputText時,無法處理換行問題JS
- ssh登入慢問題處理
- Oracle全部索引丟失導致的效率問題處理Oracle索引
- crontab導致CPU異常的問題分析及處理
- 並行設定不當導致資料處理速度變慢並行
- 【問題處理】恢復因誤生成PFILE 導致RAC的SPFILE無效的問題
- 關於時間 PHP 處理包遇到的問題時間序列化差值問題PHP
- 倒數計時快取時間問題總結快取
- servlet處理下載的問題,要考慮訪問量大時的效率問題Servlet
- c++臨時物件導致的生命週期問題C++物件
- lxml處理xml時的字元編碼問題XML字元
- SSH 連線緩慢問題處理
- Mysql執行批量sql時的格式問題MySql
- CMD執行命令列時卡住的問題命令列
- 使用資料庫處理併發可能導致的問題資料庫
- WebMagic多執行緒導致註解失效問題Web執行緒
- 【問題處理】同樣的並行表,同樣的索引結構,不同的執行計劃並行索引
- Json序列化與反序列化導致多執行緒執行速度和單執行緒執行速度一致問題JSON執行緒
- pip下載速度慢的問題
- 交流(1)-- 執行計劃錯誤問題
- sqlldr標準輸出未處理導致批處理掛起問題SQL
- 兩塊磁碟,oralce執行慢的問題
- 多端混合開發時跨域問題的處理跨域
- lama-cleaner 安裝時tokenizers問題的處理
- 求教執行EJB程式時出現的問題