MySQL运行状态诊断工具上线啦

2023-09-01 20:05:40 浏览数 (1)

业余时间搞了个新玩意

先向大家介绍MySQL运行状态分析诊断工具这个新玩意,其思路很简单,就是遍历 SHOW GLOBAL STATUSSHOW PROCESSLIST 的结果,对可能预示着有性能瓶颈的地方做出预警。主要关注几个方面:

  1. 是否有明显的等待事件,包括表锁、行锁等待,以及buffer pool wait free事件。
  2. 是否有产生较多的磁盘临时表、临时文件。
  3. 是否有长事务、大事务。
  4. 判断table cache、thread cache等是否够用。
  5. 其他等等。

判断逻辑基本就这些,无非就是要逐个判断,以及确认要关注哪些状态。

该工具已发布上线到相应链接:https://imysql.com/my-state-diag.html,欢迎试用、提建议。

再说说 my.cnf生成工具(https://imysql.com/my-cnf-wizard.html 的使用情况,下面是按月份统计,使用次数排名最靠前的10个月:

代码语言:javascript复制
mysql> select date_format(t, "%Y-%m") as 'YearMonth',
count(*) as total
from x 
group by date_format(t, "%Y-%m")
order by total desc limit 10;
 ----------- ------- 
| YearMonth | total |
 ----------- ------- 
| 2018-10   |  7455 |
| 2023-06   |  3751 |
| 2022-06   |  1881 |
| 2021-11   |  1386 |
| 2019-04   |  1279 |
| 2018-11   |  1253 |
| 2019-03   |  1127 |
| 2021-06   |  1100 |
| 2023-02   |  1086 |
| 2023-01   |   997 |
 ----------- ------- 

看起来还不错。

这个工具是2018年4月上线的,到现在已有5年多,经过多次迭代,从最开始的支持MySQL 5.6直到现在8.0版本,对不少小白用户,多少还是有一些帮助的吧。

Enjoy MySQL :)

全文完。

0 人点赞