當前位置:網站首頁>【RDS】RDS MySQL/MariaDB TX版實例CPU使用率較高,什麼原因?
【RDS】RDS MySQL/MariaDB TX版實例CPU使用率較高,什麼原因?
2022-01-26 22:32:18 【阿裏雲問答】
RDS MySQL/MariaDB TX版實例CPU使用率較高,什麼原因?
采納答案1:
應用負載(QPS)高
對於因應用負載高導致CPU使用率高的狀况,使用SQL進行優化的餘地不大,建議您從應用架構、實例規格等方面來處理問題。請參考以下方法:
-
昇級實例規格,增加CPU資源,詳情請參見變更配置。
-
增加只讀實例,將對數據一致性不敏感的查詢(比如商品種類查詢、列車車次查詢)轉移到只讀實例上,分擔主實例壓力,詳情請參見創建MySQL只讀實例。
-
使用阿裏雲PolarDB-X雲原生分布式數據庫,自動進行分庫分錶,將查詢壓力分擔到多個RDS實例上。
-
使用阿裏雲雲數據庫Memcache或者雲數據庫Redis,盡量從緩存中獲取常用的查詢結果,减輕RDS實例的壓力。
-
對於查詢數據比較靜態、查詢重複度高、查詢結果集小於1MB的應用,考慮開啟查詢緩存(Query Cache)。
說明: 能否從開啟查詢緩存(Query Cache)中獲益需要經過測試,具體設置請參見RDS MySQL 版查詢緩存(Query Cache)的設置和使用。
- 定期歸檔曆史數據、采用分庫分錶或者分區的方式减小查詢訪問的數據量。 盡量優化查詢,减少查詢的執行成本,提高應用可擴展性。
慢SQL導致查詢成本高
解决該問題的原則:定比特效率低的查詢、優化查詢的執行效率、降低查詢執行的成本。
1、通過以下方式定比特效率低的查詢:
- 執行以下SQL語句,查看當前執行的查詢語句。
show processlist;show full processlist;
系統顯示類似如下。 查詢時間長、運行狀態為Sending data、Copying to tmp table、Copying to tmp table on disk、Sorting result、Using filesort的查詢會話可能均包含性能問題。
-
若在QPS高導致CPU使用率高的場景中,查詢執行時間通常比較短,show processlist;命令或實例會話中可能會不容易捕捉到當前執行的查詢。但是您可以通過執行以下SQL語句進行查詢。 explain [$SQL]
-
您可以通過執行類似kill [$ID];的命令來終止長時間執行的會話,終止會話請參見RDS MySQL 版如何終止會話。關於長時間執行會話的管理,請參見RDS MySQL 版管理長時間運行查詢。 說明:[$ID]為該查詢語句對應的會話ID。
-
通過數據庫自治服務DAS查看當前執行的查詢:
a.登錄數據庫自治服務控制臺。
b.依次單擊目標實例右側的性能>實例會話。 c.單擊SQL列中的查詢文本,即可顯示完整的查詢和其執行計劃。
2、得到需要優化的查詢語句後,可以通過DMS控制臺上的SQL診斷來獲取優化建議。診斷報告同樣適用於排查曆史實例CPU使用率高的問題:
a.通過DMS控制臺登錄實例。
b.單擊頁面上方的SQL窗口,選擇對應的庫。
c.將查詢語句粘貼到SQL窗口,單擊SQL診斷,即可得到優化建議。
3、根據您實際情况,選擇優化建議進行處理。例如添加索引,確認執行查詢成本會大幅减少。
版權聲明
本文為[阿裏雲問答]所創,轉載請帶上原文鏈接,感謝
https://cht.chowdera.com/2022/01/202201262232181916.html
邊欄推薦
猜你喜歡
隨機推薦
- uniapp上傳圖片及組件傳值
- 瑞利年金險資金保障安全嗎?收益高不高啊?
- 華為手機USB連不上電腦的解决方法
- Flutter 2,移動金融應用開發
- 關於st25系列NFC標簽簡單介紹及st25TV系列用於門禁讀取時的注意事項總結
- 關於用ffmpeg轉手機視頻發現視頻長寬倒了的問題
- 函數 / 類模板--模板2
- 數組中的第k個最大的元素--優先級隊列、排序、堆、排序
- 單片機實例27——ADC0809A/D轉換器基本應用技術(硬件電路圖+匯編程序+C語言程序)
- Collection集合的學習
- 一場面試結束,某度員工從事Android 5年為何還是初級工程師?
- 3本書閱讀筆記【人月神話-Go語言實戰-研發能力持續成長路線】01
- PHP垃圾回收機制
- 【電子技術】什麼是LFSR?
- 死鎖?如何定比特到死鎖?如何修複死鎖?(jps和jstack兩個工具)
- 快樂寒假 22/01/20
- image
- 噴程序員?SURE?
- LDO分壓電阻計算小工具
- 面試之求一串字符串中每個字符的出現次數
- 【ISO15765_UDS&OBD診斷】-01-概述
- 【Mysql上分之路】第九篇:Mysql存儲引擎
- RHCE 第一次作業
- 2021.10.16我的第一篇博客:一切皆有可能!
- CTA-敏感行為-讀取IMEI
- 面試被問怎麼排查平時遇到的系統CPU飆高和頻繁GC,該怎麼回答?
- nuxt項目總結-綜合
- 自然語言處理學習筆記(一)
- C語言第一課
- 各比特大佬,Spark的重點難點系列暫時更新完畢
- 基於 esbuild 的 universal bundler 設計
- XCTFre逆向(四):insanity
- 理解什麼是真正的並發數
- JVM腦圖
- 【Pytorch(四)】學習如何使用 PyTorch 讀取並處理數據集
- 函數棧幀的創建與銷毀
- 構建神經網絡- 手寫字體識別案例
- 多模態生成模型ERNIE-VILG
- kotlin不容忽視的小細節
- 備戰一年,終於斬獲騰訊T3,我堅信成功是可以複制的