MySQL性能分析

MySQL性能分析

笔记

查看是否开启性能分析

select @@have_profiling;

开启性能分析

开始记录接下来执行的sql的性能:

set profiling=1;// 开启性能分析

接着执行对应的sql

$sql1;
$sql2;

对应sql的简单分析

Query_ID Duration Query
1 $second $sql1
2 $sql2

查看具体分析

show profile $checkField for query $Query_ID;

$checkField的可选参数有:

  • All
  • BLOCK IO:IO相关开销
  • CONTEXT SWITCHES:上下文切换开销
  • CPU:CPU相关开销信息
  • IPC:发送和接收相关开销
  • MEMORY:显示内存相关开销
  • PAGE FAULTS:页面错误相关开销信息
  • SOURCE:source_functionsource_filesource_line相关的开销信息
  • SWAPS:显示交换次数的开销信息

这里会显示该新sql语句在mysql中的执行顺序,并显示以上信息对应的值。

关闭性能分析

set profiling=0;

问题

  • 性能分析的具体sql语句是哪些?
  • 性能分析能分析哪些信息?

思考

性能分析的对象是一条具体的sql,针对该条sql语句在mysql中执行时,一些内部的值进行读取。

你可能感兴趣的:(数据库)