zoukankan      html  css  js  c++  java
  • mysql show profile基本详解

    show profile
    默认情况下,参数处于关闭状态,并保存最近15次的运行结果
    查看profile是否开启
      show variables like '%profi%';
    开启profile记录功能
      set profiling=on; #永久生效需要在配置文件my.cnf修改
    查看执行了哪些命令
      show profiles;
    根据上一条命令结果的Query_ID查看某条query的执行过程
      show profile cup,block io for query 11 #11 是Query_ID

    show profile用法
    type
      all 显示所有的开销信息
      block io 显示块io相关的开销
      context switches 上下文切换相关
      cpu 显示cpu相关开销
      ipc 显示发送和接收相关开销
      memory 显示内存相关开销信息
      page faults 显示页面错误相关开销
      source 显示和Source_function,Source_file,Source_line相关的开销信息
      swaps 显示交换次数相关开销的信息

    出现以下信息时其中一个,说明得优化
      converting HEAP to MyISAM查询结果太大,内存都不够用了往磁盘上搬了
      Creating tmp table 创建临时表,拷贝数据到临时表,用完再删除
      copying to tmp table 把内存中临时表复制到磁盘,危险!!!
      locked


    全局查询日志
      配置启用
        general_log=1#开启
        general_log_file=/path/logfile#记录日志的路径
        log_output=file#输出格式,file,table等
        开启后,你所编写的SQL语句都将会记录到mysql库里的general_log表里
        可以用select * from mysql.general_log查看
      命令启用
        set general_log=1;
      永远不要在生产环境开启这个功能

  • 相关阅读:
    PaaS 7层动态路由的若干实现
    05-OC对象的内存分析
    04-类与对象的练习(第二个OC的类)
    03-类的声明和实现(第一个OC的类)
    02-类与对象的关系
    01-面向对象和面向过程
    06-BOOL类型的使用
    05-初识OC多文件编程(第4个OC程序)
    04-初识OC多文件编程(第3个OC程序)
    03-第二个OC程序
  • 原文地址:https://www.cnblogs.com/linyouyi/p/9911465.html
Copyright © 2011-2022 走看看