mysql性能问题

性能优化的目的是什么呢?(合理利用可利用的资源)
性能优化的方向:
硬件方面:CPU、内存、IO、网络、硬盘、显卡
软件方面:mysql这个软件内部优化,比如sql、算法,一些配置
项目方面:需求设计、架构优化、代码优化。

优化指标:
执行时间:一段代码从开始运行到运行结束所使用的时间
CPU时间:(算法)函数或者线程占用CPU时间
内存分配:程序在运行时占用的内存时间
磁盘吞吐量:描述IO的使用情况
网络吞吐量:描述网络的使用情况
响应时间:系统对某用户行为或者动作做出响应的时间,时间越短性能越好

有关性能查询的命令:

查询进程信息,可搭配管道符号使用,ps -aux | grep 进程名

ps -aux 

top命令

top |grep 'id'

vmstat命令

[root@VM_0_17_centos ~]# vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 4  0      0  76964   6508 254316    0    0    82    41    0    0  1  1 98  0  0


r列表式可运行进程的数量
b列表式阻塞进程的数量

内存性能优4个报告虚拟内存如何使用的字段
swpd已经使用的交换空间的数量
free 自由RAM数量
buff 缓存使用的RAM的数量
cache 文件系统缓存使用的RAM数量
swap交换字段进行详细说明
si 表示从磁盘分页到内存的数量
so 表示从内存分页到磁盘的数量。
其余相关的系统命令:sar、iostat、netstat、free等

show variables; 
--查看当前session级别的隔离方式 
show variables like '%isolation%'; 
-- 查看isolation帮助 help isolation 
-- 局部修改 
set session transaction isolation level READ COMMITTED; 
show session variables like'%isolation%'; 
-- 全局修改 show global variables like '%isolation%'; 
set global transaction isolation level READ COMMITTED;
posted @ 2020-11-16 16:13  蝶墨轩冕  阅读(85)  评论(0编辑  收藏  举报