老司機帶你體驗SYS庫多種新玩法
如何更加愉快地利用sys庫做一些監控?
快來,跟上老司機,體驗sys庫的多種新玩法~
MySQL5.7的新特性中,非常突出的特性之一就是sys庫,不僅可以通過sys庫完成MySQL信息的收集,還可以用來監控和排查問題。
但你知道嗎,sys庫其實還有很多種玩法,有的或許單看表名就知道了,但有一些,還是需要老司機帶路哦~
一.用戶、連接類
2、查看每個用戶消耗資源情況
3、查看當前連接情況(有多少連接就應該有多少行)
4、查看當前正在執行的SQL和執行show full processlist的效果相當。
二.SQL 和io類
1、查看發生IO請求前三名的文件。
三、buffer pool 、內存
1、查看總共分配了多少內存。
2、每個庫(database)占用多少buffer pool
3、統計innodb 引擎的 innodb緩存
pages是指在buffer pool中的page數量;pages_old指在LRU 列表中處於後37%位置的page。
當出現buffer page不夠用時,就會征用這些page所占的空間。37%是默認位置,具體可以自定義。
4、統計每張表具體在InnoDB中具體的情況,比如占多少頁?
其實和第3例的pages的總數都是相等的,你可以借用sum(pages)運算驗證一下哦!
5、查詢每個連接分配了多少內存(我這台沒什麼業務,所以有點不堪),利用session表和memory_by_thread_by_current_bytes分配表進行關聯查詢。
四、字段、索引、鎖
1、查看表自增字段最大值和當前值,有時候做數據增長的監控,可以作為參考,你使用時,不一定要加條件語句。
3、MySQL中有哪些冗餘索引和無用索引
若庫中展示沒有冗餘索引,則沒有數據;當有聯合索引idx_abc(a,b,c)和idx_a(a),那麼idx_a就算冗餘索引了。
4、查看INNODB 鎖信息
在未來的版本將被移除,可以采用其他方式
5、查看庫級別的鎖信息,這個需要先打開MDL鎖的監控:
五.線程類
1、MySQL內部有多個線程在運行,線程類型及數量。
原文發布時間為:2017-09-14
本文作者:田帥萌@知數堂
本文來自雲棲社區合作夥伴“老葉茶館”,了解相關信息可以關注“老葉茶館”微信公眾號
最後更新:2017-09-14 16:32:44