10-Show Profile

一、Show Profile

MySQL提供可以用来分析当前会话中语句执行的资源消耗情况,用于SQL的调优的测量

1.1、查看当前版本MySQL是否支持

SHOW VARIABLES LIKE 'profiling'
查看当前版本MySQL是否支持.png
SHOW VARIABLES LIKE 'profiling%'
image.png

1.2、开启 profile

SET profiling=ON
image.png

1.3、查看 profile 记录

SHOW PROFILES
image.png

1.3、诊断SQL

SHOW PROFILE cpu, block io for QUERY 68
68: 是上次查询profile记录中的 QUERY_ID
image.png
  • 参数
    • ALL:显示所有的开销信息
    • BLOCK IO:显示块IO相关开销
    • CONTEXT SWITCHES:上下文切换相关开销
    • CPU:显示CPU相关开销信息
    • IPC:显示发送和接收相关开销信息
    • MEMORY:显示内存相关开销信息
    • PAGE FAULTS:显示页面错误相关开销信息
    • SOURCE:显示和Source_function, Source_file, Source_line相关的开销信息
    • SWAPS:显示交换次数相关开销的信息

1.4、重要的性能指标

  • converting HEAP to MyISAM 查询结果太大,内存都不够用了往磁盘上搬
  • Creating tmp table 创建临时表
    • 拷贝数据到临时表
    • 用完再删除
  • Copying to tmp table on disk 把内存中临时表复制到磁盘,很危险!!!
  • locked

你可能感兴趣的:(10-Show Profile)