zoukankan      html  css  js  c++  java
  • mysql 查询优化 ~ 善用profie利器

    一 简介:利用profile分析慢语句的过程有助于我们进行语句的优化

    二 执行过程
       set profiling=1;
       set profiling=0;
      2 执行sql
      3 查看过程消耗

    三 结果

      1 查看执行过程耗时
      SHOW profile FOR query 1
      checking permissions:检查权限
      Opening tables:打开表
      init : 初始化
      System lock :系统锁
      optimizing : 优化
      statistics : 统计
      preparing :准备
      executing :执行
      Sending data :发送数据
      Sorting result :排序
      end :结束
      query end :查询 结束
      closing tables : 关闭表 /去除TMP 表
      freeing items : 释放物品
      cleaning up :清理
      值得关注的值 1 sending data 2 Sorting result 3 Opening tables 以上所有的值并不是都会出现,这点要注意
      2 查看资源消耗
     SHOW profile all FOR query 2
     "Duration": 持续时间
     "CPU_user": cpu用户
     "CPU_system": cpu系统
     "Context_voluntary":上下文主动切换
     "Context_involuntary": 上下文被动切换
     "Block_ops_in": 输入块的个数
     "Block_ops_out": 输出块的个数
     "Page_faults_major": 主分页错误
     "Page_faults_minor": 次分页错误
     值得关注的值 1 CPU相关值 2 Context 相关值 3 Block相关值
    5 表查询
     SELECT STATE, FORMAT(DURATION, 6) AS DURATION FROM INFORMATION_SCHEMA.PROFILING WHERE QUERY_ID = 1 ORDER BY SEQ;

    6 主要问题

     简介: 本人对于大量的sql进行跟踪分析,遇到最多的就是sending data的耗时过多情况

     分析:Sending data 1读取数据 2 处理(过滤,排序等。。) 3发送数据,是主要的进行数据处理的过程,包含了所有server层和innodb层的交互

  • 相关阅读:
    php环境配置中各个模块在网站建设中的功能
    PHP+Apache+MySQL+phpMyAdmin在win7系统下的环境配置
    August 17th 2017 Week 33rd Thursday
    August 16th 2017 Week 33rd Wednesday
    August 15th 2017 Week 33rd Tuesday
    August 14th 2017 Week 33rd Monday
    August 13th 2017 Week 33rd Sunday
    August 12th 2017 Week 32nd Saturday
    August 11th 2017 Week 32nd Friday
    August 10th 2017 Week 32nd Thursday
  • 原文地址:https://www.cnblogs.com/danhuangpai/p/9876766.html
Copyright © 2011-2022 走看看