Mysql_show_profile

show profile

​ show profile是Mysql提供的分析当前会话中sql语句执行的资源消耗情况的工具。可用于sql调优的测量。默认关闭,并保持最近15此的运行结果。

分析过程

  • 开启show profile
    Mysql_show_profile

    此方式开启之后只存在于当前会话,可以通过修改全局配置set global profiling = on,来开启。

  • 通过show profiles查看结果
    Mysql_show_profile

    上图中,有每一条sql的执行时间。

  • 可以通过show profile针对具体的某一条sql进行具体的分析查看。
    Mysql_show_profile

    上图分析了Query_ID为4的这条sql的cpu和IO的开销信息。

    具体的type有以下几种:
    all:显示所有性能信息;
    block io:显示块io操作的次数
    context switches:显示上下文切换次数,被动和主动
    cpu:显示用户cpu时间、系统cpu时间
    IPC:显示发送和接受的消息数量
    Memory:暂未事用
    page faults:显示页错误数量
    source:显示源码中的函数名称和位置
    swap:显示swap的次数