mysql调优(一)性能监控

本文介绍了MySQL的性能监控工具,包括使用showprofile进行SQL执行时间的查询,以及如何利用performance_schema监控数据库的资源消耗和等待情况。通过showprofile可以详细分析SQL的执行细节,而performance_schema则提供了更深入的服务器状态信息,帮助识别性能瓶颈。
摘要由CSDN通过智能技术生成

MySQL调优(一)性能监控

一 、使用show profile 查询剖析工具

  • 此工具默认是禁用的,可以通过变量动态修改,设置后可以监控耗费时间在这里插入图片描述

1.show profiles

查询所有运行SQL的执行时间
在这里插入图片描述

2.show profile

查询最近一次SQL的执行时间
在这里插入图片描述

3.show profile for query n

查询show profiles ID 为n 的SQL执行时间
在这里插入图片描述
在这里插入图片描述
还可以查询所有type 信息

show profile all for query 2;

在这里插入图片描述
下面说下几个重点的类型含义

type含义
all显示所有的性能信息
block io显示IO的操作次数
context swiches显示上下文的切换次数
cpu显示用户的CP U时间、系统CPU时间
ipc显示发送和接受消息的数量
page faults显示页错误数量
source显示源码中的函数名称与位置
swaps显示swap的次数
show profile block io for query 2;
show profile context switches for query 2;
show profile cpu for query 2;
show profile ipc for query 2;
show profile page faults for query 2;
show profile source for query 2;
show profile swaps for query 2;

二、使用performance_schema

  • MySQL 安装是自带的监控数据库,数据库包含87张表,用于监控MySQL Server 在一个较低级别的运行过程中的资源消耗、资源等待的情况,更加容易监控MySQL

1.开启和关闭

默认是开启的状态 可以在文件中修改 my.in

#默认开启
performance_schema = ON

2.设置配置

默认情况下会有一些配置事关闭状态,如下图:
在这里插入图片描述
打开等待事件的采集器配置项开关需要修改 setup_instruments配置表中对应采集器配置项

update setup_instruments set enabled ='YES' , timed ='YES';

3 查看当前Server 正在做什么

mysql> select * from events_waits_current\G;
字段含义
ID事件来自那个线程
event_name表示检测的具体内容
SOURCE表示这个检测代码在那个源文件以及行号
TIMER_START事件的开始时间
TIMER_END事件的结束时间
TIMER_WAIT事件的总花费时间
  • events_waits_current每个线程只有一条记录
  • events_waits_history 完成时间的信息,每个线程存10条记录,多个会覆盖
  • events_waits_history_log 历史总记录 10000条

三、使用show processlist

查看链接的线程个数,来观察是否有大量的线程处于不正常的状态或其他不正常的特征

mysql>show processlist;

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值