某次資料庫效能監控中發現的問題
1. 總體執行情況
促銷活動期間,資料 庫主要業務落在節點1上,總體執行相對穩定,伺服器記憶體資源充足,節點1隨併發數增高持續有大約20分鐘出現CPU資源使用高峰問題,高峰期CPU使用峰值達97%,使用均值78.5%,此期間,出現大量行鎖等待以及資源管理排程引起CPU等待。
2. 現象及問題分析
1) 索引爭用等待和熱塊爭用等待
l enq: TX - index contention和buffer busy waits::業務高峰期,對MSTB_ORDER_HEADER做INSERT及UPDATE時發生大量索引塊更新爭用等待和大量熱塊爭用等待,導致該事件是因為初步查詢了MSTB_ORDER_HEADER表的索引情況,發現建立了許多索引。建議:1)簡化索引,去掉不必要的重複索引。2)重建索引到不同的表空間下。3)部分索引是否可重建成反向索引。4)從業務上是否可減少插入或更新的次數?5)該表是否建立分割槽?
l 引起該等待事件SQL_ID為98jwpq3r5z47u和98jwpq3r5z47u等。
2) 資源管理計劃CPU等待
l resmgr:cpu quantum:業務高峰期間,出現大量resmgr:cpu quantum等待事件的SQL,並且消耗了50%以上CPU, resmgr:cpu quantum等待事件是因為資源管理計劃的時間視窗被啟用才發生該事件。確認是否人為定義了資源管理計劃的時間視窗。亦可能ORACLE是預設開啟各種自動作業,因為而產生了該類等待事件。
l 建議:1)禁用資源管理、禁用預設的維護計劃,關閉一些不需要的維護任務(禁用資源管理計劃可能引起部分自動JOB無法使用),2)打上資源管理器相應的補丁。
l 引起該等待事件的SQL_ID為fm84pykjjn398、dnmf3y0hmtdcu和6zr00uskqa6d2等select語句。
3) SQL問題
個別SQL語句消耗較多資源,其中fm84pykjjn398與cwzu5v87fhcpg、2u973xwdjwc16等進行配售業務的SQL基本相同,都是對MSTB_Quota及MSTB_Header進行關聯查詢,希望開發商儘量優化程式碼,避免同樣的sql在資料庫中進行多次硬解析。同時還發現fm84pykjjn398出現了多個執行計劃,且其消耗相差較大,建議檢視統計資訊情況,必要的話進行固定執行計劃。
建議對7anrtd1pvz87y(AEC業務)看看是否可以進一步優化,調整相應的索引!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29863023/viewspace-1708150/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 監控資料庫連線遇到的一個小問題資料庫
- 檔案監控效能問題【BUG】
- 效能測試之資料庫監控分析工具PMM資料庫
- MySQL監控-Datadog資料庫監控調研MySql資料庫
- SQL SERVER資料庫datediff函式引發的效能問題SQLServer資料庫函式
- Django ORM 引發的資料庫 N+1 效能問題DjangoORM資料庫
- 前端監控(效能/資料/異常)前端
- 大資料開發-資料表監控-實現大資料
- 監控資料庫活動資料庫
- 資料庫監控---PIGOSS BSM資料庫Go
- 資料庫繁忙程度監控資料庫
- 資料庫系列:巨量資料表的分頁效能問題資料庫
- 效能測試之資料庫監控分析工具Grafana+Prometheus資料庫GrafanaPrometheus
- UAVStack的慢SQL資料庫監控功能及其實現SQL資料庫
- 聊聊國產資料庫遷移中的表連線效能問題資料庫
- Zabbix監控神通資料庫教程資料庫
- shell監控mysql 8.0資料庫MySql資料庫
- shell監控mysql 5.7資料庫MySql資料庫
- MongoDB資料庫效能監控看這一篇就夠了MongoDB資料庫
- zanePerfor前端監控平臺效能優化之資料庫分表前端優化資料庫
- 超牛逼的效能監控神器!快速定位線上問題
- Python呼叫阿里雲資料庫監控資料Python阿里資料庫
- 記憶體洩漏引起的 資料庫效能問題記憶體資料庫
- 資料庫DML監控一例資料庫
- Zabbix+Python監控Oracle資料庫PythonOracle資料庫
- GO實現資料夾監控Go
- SQL Server 資料庫開發中的十大問題VYSQLServer資料庫
- 資料庫效能大揭秘:玩轉MySQL監控指標狀態變數資料庫MySql指標變數
- 用友全球司庫十問(四)|企業如何實現融資債券資料資訊的實時監控?
- ☕[JVM效能專題](1)效能監控-命令列工具JVM命令列
- 自定義帶監控的資料庫連線池資料庫
- zabbix6.2新增mysql資料庫監控MySql資料庫
- iOS開發過程中 效能監控及優化iOS優化
- Laravel 安裝 voyager 出現的資料庫問題Laravel資料庫
- Linux中監控系統效能常用的命令!Linux
- 在Linux中,如何監控系統的效能?Linux
- 【Redis實戰專題】「效能監控系列」全方位探索Redis的效能監控以及最佳化指南Redis
- 【TRACE】如果通過10046跟蹤資料庫效能問題資料庫
- php效能監控PHP