mysql优化课之mysql性能压测工具

mysql性能压测工具

课程内容

  1. 上节课复习

  2. 什么是性能优化

  3. mysql性能影响

  4. mysql的性能压测工具

上节课复习

请自行复习上节课学习的内容笔记

什么是性能优化

在不影响系统运行的情况,去完成特定的工作

影响mysql性能

影响mysql的方面(硬件层面)

cpu/内存/IO/网络/显卡

影响mysql的方面(软件层面)

产品原因/数据库中的表结构/操作系统

影响mysql的方面(意识层面)

产品经理/代码的实现

影响mysql的方面(业务层面)

需求定位/业务流程重组

mysql优化的几个方面

数据表优化>>sql语句优化>>数据库参数配置>>硬件资源优化

影响mysql性能(上)

limits.conf:linux资源限制文件,默认打开数量 1024

limits.conf文件相关说明

type:有soft,hard和- 
soft指的是当前系统生效的设置值。 
hard表明系统中所能设定的最大值 
soft的限制不能比hard限制高。用-就表明同时设置了soft和hard的值 
item: 
core -限制内核文件的大小 
date -最大数据大小 
fszie -最大文件大小 
memlock -最大锁定内存地址空间 
nofile -打开文件的最大数目 
rss -最大持久设置大小 
stack -最大栈大小 
cpu -以分钟为单位的最多CPU时间 
noproc -进程最大数目 
as -地址空间限制 
maxlogins -此用户允许登录的最大数目

应用场景

连接sleep超时

代码->操作数据->操作完成->没有关闭数据库

独立表空间

表空间

是每个表存放数据的地方

例子:

一个仓库,你要往仓库里面放东西的话,

你来一些东西你就随便扔到里面,这样东西一多,

你要找到一个东西 就很难找了。

那怎么办呢,我在仓库里面放几个货架,

每个货架放同一个种类的东西,这样的话,

找一个东西 就很方便了。

表空间就和这个货架差不多,每个表单独管理的话,那找数据就比较方便了。

mysql5.6.6之前默认是共享的表空间,

mysql5.6.6之后默认是开启了独立表空间的。

共享表

共享表空间:就是说这个空间是所有的表都共享的,所有的表的数据都存在一个地方的

共享表空间的缺点:不能自动收缩。

什么是自动收缩? 刚建表的时候,表里面数据很少,就1条数据,可能占用空间就几kb,到后来数据多了,占用了10个G的空 间,然后发现有一些数据都是垃圾数据,删了5个G,那这个时候表空间就不会自动减小了,它还是10个G,浪 费空间。

共享表和独立表

而独立表空间就是每个表的表空间都是独享的,

用仓库这个例子就是每个货架都单独在一个房间里头,

这样的话快递员去拿哪个东西,

直接去那个房间里就好了,

不用都挤在一个仓库里了。

而使用了独立的表空间,每个表都有自己的表空间,

删了数据也会自动收缩,就不会有上面的问题了。

影响mysql性能(下)

读写进程数配置

缓存配置影响

查询缓存回产生的性能 : 当缓存量越拉越大的时候,也会占用一些资源

在mysql8.0已经移除

性能压测工具

mysqlslap(mysql自带性能压测工具):

优点:

1.查询数据,语法简单

2.灵活容易使用

  1. 产生的结果直观

测试对象 : 高并发

mysqlslap -a -u root -p (-u 连接用户名 -p 密码)

ab : Apache提供的性能压测数据

原文地址:https://www.cnblogs.com/studyandstudy/p/14698185.html