您好,登錄后才能下訂單哦!
背景:
數據庫的工作中,最常見就是慢sql優化了,但是DBA怎么才能從這種繁雜的工作中抽出身來,比前就是自己去數據庫里查,或者其他的途徑發現一個慢sql,然后就丟給開發,DBA就像一個后媽一樣在跟在屁股后面去催開發優化,這個方式不但工作效率低下,也影響消耗DBA的時間,DBA應該從這些日常繁雜的事情中抽身出來去對接業務,研究新技術,架構等,更多時間去做一些更加有價值的事情
解決方案:
目前公司的主要業務都在放在阿里云的RDS上,阿里云提供接口去訪問慢sql日志
一,原數據準備
1,寫一個小程序定時去抽取所有實例的慢sql存放在表中
2,把所有的sql打上標簽,方便后面的分析
3,輸出慢sql的執行計劃并存儲在表中
二,數據分析和慢sql處理流程
1,通過這些原數據,從sql執行時間,次數,掃描的行數,排序,索引的使用情況等多個維度來分析sql,并輸出分析結果
2,把經過處理的慢sql和tapd項目管理系統打通,把每個sql自動分配到相關的開發責任人
3,輸出優化結果報表,每個項目每周的慢sql優化情況
三總結:
1,通過這種方式可以減少DBA的工作量
2,通過平臺來管理和跟蹤慢sql的優化,會讓整個工作流更加清晰和高效
3,通過報表讓整個優化工作更加清晰,調動開發積極性,讓得優化工作可以量化
四,代碼和結果截圖:
1,并發拉取慢sql:
2,結果生成Html
3,生成報表:
結果展示:
1,慢sql日志:
2,tapd工單:
3,報表:
嘮叨:
1,因為代碼也比較多,所以只是隨便貼了一點代碼
2,只是展示其中一些輸出結果
3,目前還沒有做成平臺,因為俺的前端開發還不大會,哈哈!目前先做成這樣子,但是這樣也能有效提高工作效率了
4,在這里只拋磚引玉,和大家分享一下自己的一些思路,歡迎大家留言,期待大牛的方案和指導,謝謝
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。