MySQL利用 INFORMATION_SCHEMA.PROFILING 分析SQL性能

栏目: 数据库 · 发布时间: 5年前

内容简介:MySQL5.7中有一个系统默认库 information_schema , 里面有些表如 PROFILING, PROCESSLIST,INNODB_TRX等,其中 PROFILE 对于我们分析sql有很大的帮助,在此以前我们需要使用从 MySQL8.0开始, 这个表也开始被废弃了,以后分析性能问题直接使用另一个系统库 performance_schema 里的相关表(setup_actors)就可以了。到时候 show profiles 和show profile两个命令也不能用了。默认情况下是 OFF

MySQL5.7中有一个系统默认库 information_schema , 里面有些表如 PROFILING, PROCESSLIST,INNODB_TRX等,其中 PROFILE 对于我们分析 sql 有很大的帮助,在此以前我们需要使用 SHOW PROFILE 命令,不过此命令以后将被废弃。下面我们就介绍一下如何使用此表。

MySQL 8.0开始, 这个表也开始被废弃了,以后分析性能问题直接使用另一个系统库 performance_schema 里的相关表(setup_actors)就可以了。到时候 show profiles 和show profile两个命令也不能用了。

1.在使用此表前,我们需要开户性能检测功能。

mysql> SELECT @@profiling;
+-------------+
| @@profiling |
+-------------+
|           0 |
+-------------+
1 row in set (0.00 sec)

mysql> SET profiling = 1;
Query OK, 0 rows affected (0.00 sec)

默认情况下是 OFF/0 状态。在我们分析完,最好关闭以减少服务器压力。

相关查询命令

show VARIABLES like 'profil%'
-------------------------------
profiling	ON
profiling_history_size	15

2. 了解 information_schema.profiling 表的常用字段

官方文档: https://dev.mysql.com/doc/refman/8.0/en/profiling-table.html

1 QUERY_ID 查询ID, 用于标记不同的查询
2 SEQ 一个查询内部执行的步骤 , 从2开始
3 STATE 步骤的状态
4 DURATION 持续时间
5 CPU_USER 用户空间的cpu 使用量
6 CPU_SYSTEM 内核空间的cpu 使用量
7 CONTEXT_VOLUNTARY 上下文主动切换
8 CONTEXT_INVOLUNTARY 上下文被动切换
9 BLOCK_OPS_IN 阻塞输入操作
10 BLOCK_OPS_OUT 阻塞输出操作
11 MESSAGES_SENT 消息发送
12 MESSAGES_RECEIVED 消息接受
13 PAGE_FAULTS_MAJOR 主分页错误
14 PAGE_FAULTS_MINOR 次分页错误
15 SWAPS swap 发生的次数
16 SOURCE_FUNCTION MySQL源码执行函数
17 SOURCE_FILE 源码文件
18 SOURCE_LINE 源码行数

以下是我执行了一个join语句的输出,从结果中我们可以分析出哪个步骤执行的时间最长,进行相应的优化即可。

MySQL利用 INFORMATION_SCHEMA.PROFILING 分析SQL性能

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法:C语言实现

算法:C语言实现

塞奇威克 / 机械工业出版社 / 2006-9 / 69.00元

本书是Sedgewick彻底修订和重写的C算法系列的第一本。全书分为四部分,共16章,第一部分“基础知识”(第1-2章)介绍基本算法分析原理。第二部分“数据结构”(第3-5章)讲解算法分析中必须掌握的数据结构知识,主要包括基本数据结构,抽象数据结构,递归和树。一起来看看 《算法:C语言实现》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

html转js在线工具
html转js在线工具

html转js在线工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具