mysql查找sql耗时瓶颈 show profiles

1、首先查看是否开启profiling功能

SHOW VARIABLES LIKE ‘%pro%‘; 

或者

SELECT @@profiling; 

2、开启profiling

SET profiling=1; 

3、执行sql语句
例如:

SELECT
  table_schema AS ‘Db Name‘,
  ROUND( SUM( data_length + index_length ) / 1024 / 1024, 3 ) AS ‘Db Size (MB)‘,
  ROUND( SUM( data_free ) / 1024 / 1024, 3 ) AS ‘Free Space (MB)‘
FROM information_schema.tables
GROUP BY table_schema ;  

4、查看结果

SHOW profiles;
SHOW profile ALL FOR QUERY 94;
94是查询ID号。
SHOW profiles语法:
SHOW PROFILE [type [, type] … ]
    [FOR QUERY n]
    [LIMIT row_count [OFFSET offset]]
type:
    ALL
  | BLOCK IO
  | CONTEXT SWITCHES
  | CPU
  | IPC
  | MEMORY
  | PAGE FAULTS
  | SOURCE
  | SWAPS  

本文转自http://blog.csdn.net/k_scott/article/details/8804384

时间: 2024-10-14 10:29:12

mysql查找sql耗时瓶颈 show profiles的相关文章

如何在mysql查找效率慢的SQL语句

如何在mysql查找效率慢的SQL语句呢?这可能是困然很多人的一个问题,MySQL通过慢查询日志定位那些执行效率较低的SQL 语句,用--log-slow-queries[=file_name]选项启动时,mysqld 会写一个包含所有执行时间超过long_query_time 秒的SQL语句的日志文件,通过查看这个日志文件定位效率较低的SQL .下面介绍MySQL中如何查询慢的SQL语句 一.MySQL数据库有几个配置选项可以帮助我们及时捕获低效SQL语句 1,slow_query_log 这

[MySQL优化] -- 如何查找SQL效率地下的原因

[MySQL优化] -- 如何查找SQL效率地下的原因   来源: ChinaUnix博客 日期: 2009.07.20 16:12 (共有条评论) 我要评论       查询到效率低的 SQL 语句 后,可以通过 EXPLAIN 或者 DESC 命令获取 MySQL 如何执行 SELECT 语句的信息,包括在 SELECT 语句执行过程中表如何连接和连接的顺序,比如我们想计算 2006 年所有公司的销售额,需要关联 sales 表和 company 表,并且对 profit 字段做求和( su

Orecle Mysql 基本sql语句DDL & DML 介绍与总结 by 冰琉璃

先给大家普及一下安装mysql的简易方法:yum yum search mysql (查找关于mysql的内容) 找到后需要安装3个内容 mysql.i386 mysql-server.i386 mysql-devel.i386 安装过后 service mysqld start (启动mysql服务) 进入mysql mysql -h -u root -p 密码直接回车 开始密码为默然:以后可以在mysql里面改密码或者创建账号等操作 Mysql的sql语句大致分为4种  DDL (定义语句)

mysql的sql性能分析器

MySQL 的SQL性能分析器主要用途是显示SQL执行的整个过程中各项资源的使用情况.分析器可以更好的展示出不良SQL的性能问题所在. mysql sql profile的使用方法 1.开启mysql sql profile 检查mysql sql profile是否启用mysql> select @@profiling;+-------------+| @@profiling |+-------------+|           0 | +-------------+1 row in set

navicate for mysql 导出sql脚本,然后通过notepad++ 正则表达式加工

navicate for mysql 导出sql脚本,然后通过notepad++加工 使用目标:提取所有的 drop table sql脚本 效果图: 我的操作步骤: step 1,在 navicate for mySQL 中 选中某个数据库,然后 右键 -> Dump SQL File , 然后选择保存路径, 会保存为一个 sql脚本文件,包括 建table 及 table 的insert 脚本. step 2,   打开这个sql脚本文件,然后 copy至 notepad++ step 3,

Mysql 查找表中的前n大元素

转载注明出处:http://www.cnblogs.com/liangyongrui/p/8622593.html Mysql 查找表中的前n大元素 用程序写很简单,利用堆维护一下就行了,但是用sql呢? 解法: 假设需要比较的字段是a,找出前n大的行,则答案为count(比a小的行) < n的行.(说起来有点绕..看个例子就懂了) 假设有这样的一个表 Id Name Salary 1 Joe 70000 2 Henry 80000 3 Sam 60000 4 Max 90000 5 Janet

【20180329】MySQL优化SQL一则以及思考

线网环境 MySQL 5.6.21-log MySQL Community Server innodb_buffer_pool_size 1G 关闭QC 表存在分区 表结构和待优化的SQL mysql> show create table articles \G *************************** 1. row *************************** Table: articles Create Table: CREATE TABLE `articles` (

Mysql之SQL使用

Mysql之SQL使用 简介什么是 SQL?SQL 指结构化查询语言SQL 使我们有能力访问数据库SQL 是一种 ANSI 的标准计算机语言备注:ANSI,美国国家标准化组织 一.SQL语句.语法 1.查:SELECT 语句用于从表中选取数据.结果被存储在一个结果表中(称为结果集). sql select 语法 select 列 from table_name: select * from table_name; 2.插:INSERT INTO 语句用于向表格中插入新的行. sql insert

mysql数据库sql语句

数据库(mysql) sql是一种编程语言,用于存储,查询,更新,管理关系型数据库 分为四类: DDL:数据定义语言 //针对于数据库和表,creat drop alter select DCL:数据控制语言 //grant...if DML:数据操纵语言 //操作表中数据,insert delete update DQL:数据查询语言 //查询:select 1.数据库的创建/删除/查/切换 a)Create database 数据库名称 //创建数据库 b)Drop database 数据库