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里面执行(临时配置):
bash 复制代码
show variables like '%slow_query%';  

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

bash 复制代码
show variables like '%long_query%';   
  1. 打开后可以监控慢查询sql(多慢算慢,标准是1s以内算正常) --临时打开(以下两种方法)
bash 复制代码
set global slow_query_log=ON;   
set global long_query_time =1;  #(或者等于1,等于0是关闭)
  1. 可以选file,table。如果选 table ,则慢记录会保存在mysql.slow_log表中
bash 复制代码
select * from mysql.slow_log;    # 查看慢查询表数据
  1. 查询数据库最大连接数
bash 复制代码
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连接数、慢查询、表锁

相关推荐
计算机学姐1 小时前
基于SpringBoot+Vue的高校运动会管理系统
java·vue.js·spring boot·后端·mysql·intellij-idea·mybatis
-XWB-1 小时前
【MySQL】数据目录迁移
数据库·mysql
掘根2 小时前
【MySQL】Ubuntu环境下MySQL的安装与卸载
数据库·mysql·centos
知识分享小能手3 小时前
mysql学习教程,从入门到精通,SQL 修改表(ALTER TABLE 语句)(29)
大数据·开发语言·数据库·sql·学习·mysql·数据分析
fat house cat_3 小时前
mysql-索引笔记
数据库·mysql
He guolin3 小时前
【MySQL】数据库基础知识
数据库·mysql
F_D_Z5 小时前
【SQL】未订购的客户
数据库·sql·mysql
shylyly_8 小时前
Linux的基本指令(3)
数据库·mysql·linux的基本指令
全职计算机毕业设计9 小时前
基于协同过滤的网络文学智能推荐平台的设计与实现(小说)springboot mysql Redis Thymeleaf
spring boot·后端·mysql