zoukankan      html  css  js  c++  java
  • 如何获取有性能问题的sql

      1.通过用户反馈获取存在性能问题的SQL.
      2.通过慢查日志获取存在性能的SQL.
      启动慢查日志
      slow_query_log=on
      set global slow_query_log=on;
     
      slow_query_log_file 指定慢查日志存储路径及文件
      默认情况保存在mysql的数据目录中,最好日志存储和数据存储分开。
      long_query_time
      
      指定记录慢查日志SQL执行时间的阀值,单位为秒,默认值为10秒。精确到微秒,
      如果为一毫秒这个值为 0.001 。
      记录的语句包括
      1.查询语句
      2.数据修改语句
      3.已经回滚的SQL
      log_queries_not_using_indexes 是否记录未使用索引的SQL
      慢查日志中记录的内容:
      
      第一行记录了:
      用户信息,线程ID号 用户信息 sbtest ,线程ID为 17
      第二行 :记录了查询时间
      第三行 :锁的时间
      第四行 : 返回的记录行数
      第五行: 扫描的行数
      第六行 : 执行的时间
      第七行 : 执行的语句
      常用慢查询日志分析工具
      1.mysqldumpslow
      汇总除查询条件外其他完全相同的SQL,并将分析结果按照参数中指定的顺序输出。
      mysqldumpslow –s r –t 10 slow.log
      -s order (c,t,l,r,at,al,ar)
      c: 总的次数
      t:总的时间
      l:锁的时间
      r: 总数据行
      at,al,ar: t,l,r 的平均数
      at 总时间 /总次数
      -t top 指定取前几条作为结果输出
      2.pt-query-digest
      pt-query-digest –explain -h=127.0.0.1,u=root,p=root slow.log>slow.report
      可以包括执行计划。
      3.实时获取性能的问题的SQL
      
      select id,user,host,db,command ,time,state,info from information_schema.processlist where time>60;
      查询服务器中查询时间超过60秒的SQL.
  • 相关阅读:
    Excel—TIME函数简介与用法
    Excel—LEFT、RIGHT、MID函数提取不同位置的字段
    $scope.triggerSave $scope.createForm.dayType.$dirty = false;
    SVN clean up的作用
    js 获取当年到今日的时间区间
    jersey
    vector
    AngularJS 2
    URL 字符介绍
    JS factory
  • 原文地址:https://www.cnblogs.com/ghjbk/p/6709111.html
Copyright © 2011-2022 走看看