接上次博客:基础配置
多用户登录并退出jmx文件:百度网盘
提取码:0000
一、练习jmeter脚本检测mysql慢查询
- 随意找一个脚本(多用户登录并退出),并发数设置300、500后分别查看mysql监控平台
- 启动后查看,主要查看mysql连接情况 下图查看:Max Used Connections最大176, 分析查看:设置的最大连接数为512,实际最大只能连接176,其他的在等待连接或者在排队

- 查看Mysql Slow Queries慢查询,最大慢查询在7.28s,平均是0.38s

- 主机基础监控CPU、内存都在90%以上,可以先处理CPU,内存问题

- 观察聚合报告,压测300,500都没有异常率


- 通过表查看慢查询数据,只筛选2024-06-09 18:31:00之后的数据按降序排列
select * from mysql.slow_log where start_time>'2024-06-09 18:31:00' order by start_time desc;
查询出有这么多条慢查询sql
start_time :开始时间
user_host:监控主机IP
query_time:花费的查询时长(按照设置的,超过1s的都会被筛选出来)
7. 随意选择一个语句,选择后面的(BLOB 3.32)点击上面的文本(或备注),会在表格下面出现慢查询的sql语句
- 复制该语句,进行执行后可能会为空(不关注这里),注意要对应数据

- 点击上面的解释,显示如下 type=ALL:代表全表搜索,没有带任何索引 rows=906014:从90W条数据中查询,依次类推,把慢查询的语句给研发查看进行优化
type类型有哪些,和执行速度:CONST>EQ_REF>REF>RANEG>INDEX>ALL ALL全表搜索:数据库查询里最慢的一种
开发优化后再次压测,如果再出现慢查询再次优化,直到满足需求为止!
版权归原作者 回家吃月饼 所有, 如有侵权,请联系我们删除。