当前位置: 首页 > news >正文

jmeter性能优化之mysql配置

一、连接数据库和grafana

准备:连接好数据库和启动grafana并导入mysql模板

大批量注册、登录、下单等,还有过节像618,双11和数据库交互非常庞大,都会存在数据库的某一张表里面,当用户在登录或者查询某一个界面时,量少的话体现不出来,量很大的时候一定会有卡的现象,
性能响应一般是2、5、8、10,当2s响应的时候还可以忍受,当5s响应的时候都可能会损失很多用户,

例如查询订单表,如下,一张表有10w条数据
在这里插入图片描述

二、查看grafana监控模板和打开慢查询开关及最大连接数
  1. 查看mysql connections看板(目前没有压测,数据都很低)
    Max Connections:最大连接数 151(默认,后面可以更改)
    Max Userd Connections:最大用户连接数
    Connections:当前连接数
    在这里插入图片描述

  2. 查看mysql slow queries看板(慢查询)
    慢查询主要影响的索引(主键、外键、索引):
    索引分类:主键索引、唯一索引、普通索引、全文索引、覆盖索引、组合索引
    在这里插入图片描述

在这里插入图片描述
MySQL TableLocks 表锁
Table Locks Immediate:立即表锁
Table Locks Waited:等待表锁

  1. 打开慢查询开关(默认OFF),在navicat里面执行(临时配置):
show variables like '%slow_query%';  

查看慢查询默认设置多少s(默认是10s),超过了10s就会写到指定某个表里或文件里:

show variables like '%long_query%';   
  1. 打开后可以监控慢查询sql(多慢算慢,标准是1s以内算正常) --临时打开(以下两种方法)
set global slow_query_log=ON;   
set global long_query_time =1;  #(或者等于1,等于0是关闭)
  1. 可以选file,table。如果选 table ,则慢记录会保存在mysql.slow_log表中
select * from mysql.slow_log;    # 查看慢查询表数据
  1. 查询数据库最大连接数
show variables like '%max_connections%'; 
  1. 永久配置,mysql配置(一般在etc目录下面),编辑my.conf文件(放在最后)
    在这里插入图片描述
    log_output=table #将慢查询日志保存到表中
    slow_query_log=1 #开启慢查询
    long_query_time=1 #慢查询超时为1s
    max_connections=512 #最大连接数

    重启mysql服务:systemctl restart mysqld
    再使用navicat执行sql查看,都改过来了
    show variables like ‘%slow_query%’; # 查看慢查询是否开启
    show variables like ‘%long_query%’; # 查看慢查询设置多少s
    show variables like ‘%max_connections%’; # 查询数据库最大连接数

三、关注指标

关注指标:mysql连接数、慢查询、表锁

http://www.lryc.cn/news/368670.html

相关文章:

  • VueRouter3学习笔记
  • 「前端+鸿蒙」鸿蒙应用开发-TS函数
  • python后端结合uniapp与uview组件tabs,实现自定义导航按钮与小标签颜色控制
  • mingw如何制作动态库附python调用
  • Vue学习|Vue快速入门、常用指令、生命周期、Ajax、Axios
  • Python基础教程(八):迭代器与生成器编程
  • Oracle10.2.0.1冷备迁移之_数据文件拷贝方式
  • 智能合约中外部调用漏洞
  • 转型AI产品经理(4):“认知负荷”如何应用在Chatbot产品
  • 【C++11】常见的c++11新特性(一)
  • 牛客周赛 Round 46 题解 C++
  • 9.3 Go 接口的多态性
  • Java通过字符串字段匹配形成树形结构
  • 数字孪生智慧水利:精准管理与智能决策的新时代
  • 基于ChatGLM3的本地问答机器人部署流程
  • 归并排序——逆序数对的统计
  • 基于截图和模拟点击的自动化压测工具开发(MFC)
  • 力扣每日一题 6/10
  • [知识点] 内存顺序属性的用途和行为
  • JAVA Mongodb 深入学习(二)索引的创建和优化
  • 转让北京劳务分包地基基础施工资质条件和流程
  • Python基础——字符串
  • AP的数据库性能到底重要吗?
  • Vue3【二】 VSCode需要安装的Vue语法插件
  • 设置路径别名
  • 人事信息管理系统(Java+MySQL)
  • Python 中生成器与普通函数的区别
  • 最小栈、栈的弹出(C++)
  • 20240607每日通信--------VUE3前端引入scoket-io,后端引入Netty-SocketIO,我成功了,希望一起交流沟通
  • Tomcat源码解析(八):一个请求的执行流程(附Tomcat整体总结)