默认情况下mysql不记录慢查询日志,需要在启动的时候指定
 bin\mysqld.exe - -slow-query-log

通过慢查询日志定位执行效率较低的SQL语句。慢查询日志记录了所有执行时间超过long_query_time所设置的SQL语句。 show variables like ‘long_query_time’; set long_query_time=2;

配置慢查询相关设置

[mysqld]

slow_query_log=1
slow_query_log_file = i:/myweb/mysql/lib/slowquery.log
long_query_time=0.001
log-queries-not-using-indexes

执行一个超过2秒操作,例如:select sleep(3);日志会出现有问题的sql语句,可以根据这些sql进行修改和优化。

I:\myweb\mysql\bin\mysqld, Version: 5.5.20-log (MySQL Community Server (GPL)). started with:
TCP Port: 3306, Named Pipe: (null)
Time                 Id Command    Argument
# Time: 140412 15:57:52
# User@Host: root[root] @ localhost [127.0.0.1]
# Query_time: 0.500029  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
use chinatupai;
SET timestamp=1397289472;
select sleep(0.5);
# Time: 140412 15:58:15
# User@Host: root[root] @ localhost [127.0.0.1]
# Query_time: 0.294017  Lock_time: 0.002001 Rows_sent: 6620  Rows_examined: 6620
SET timestamp=1397289495;
select title from phphi_article;
# Time: 140412 16:04:53
# User@Host: root[root] @ localhost [127.0.0.1]
# Query_time: 0.390001  Lock_time: 0.171601 Rows_sent: 10000  Rows_examined: 10000
SET timestamp=1397289893;
select*from db1.tb2 order by id desc limit 10000;
I:\myweb\mysql\bin\mysqld, Version: 5.5.20-log (MySQL Community Server (GPL)). started with:
TCP Port: 3306, Named Pipe: (null)
Time                 Id Command    Argument
# Time: 140412 16:08:37
# User@Host: root[root] @ localhost [127.0.0.1]
# Query_time: 2.513605  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
use chinatupai;
SET timestamp=1397290117;
select sleep(2.5);
I:\myweb\mysql\bin\mysqld, Version: 5.5.20-log (MySQL Community Server (GPL)). started with:
TCP Port: 3306, Named Pipe: (null)
Time                 Id Command    Argument
# Time: 140412 16:11:00
# User@Host: root[root] @ localhost [127.0.0.1]
# Query_time: 2.508005  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
use chinatupai;
SET timestamp=1397290260;
select sleep(2.5);

mysql 优化2 慢查询的更多相关文章

  1. Mysql优化_慢查询开启说明及Mysql慢查询分析工具mysqldumpslow用法讲解

    Mysql优化_慢查询开启说明及Mysql慢查询分析工具mysqldumpslow用法讲解   Mysql慢查询开启 Mysql的查询讯日志是Mysql提供的一种日志记录,它用来记录在Mysql中响应 ...

  2. mysql优化:慢查询分析、索引配置优化

    一.优化概述二.查询与索引优化分析a.性能瓶颈定位show命令慢查询日志explain分析查询profiling分析查询b.索引及查询优化三.配置优化 max_connections back_log ...

  3. Mysql 优化,慢查询

    最近项目上遇到点问题,服务器出现连接超时.上次也是超时,问题定位到mongodb上,那次我修改好了,这次发现应该不是这个的问题了. 初步怀疑是mysql这边出问题了,写的sql没经过压力测试,导致用户 ...

  4. Mysql优化之Explain查询计划查看

    我们经常说到mysql优化,优化中一种常见的方式就是对于经常查询的字段创建索引.那么mysql中有哪些索引类型呢? 一.索引分类1.普通索引:即一个索引只包含单个列,一个表可以有多个单列索引 2.唯一 ...

  5. 简单谈谈MySQL优化利器-慢查询

    慢查询 首先,无论进行何种优化,开启慢查询都算是前置条件.慢查询机制,将记录过慢的查询语句(事件),从而为DB维护人员提供优化目标. 检查慢查询是否开启 通过show variables like ' ...

  6. mysql优化-覆盖索引查询,join

    1 原始sql: SELECT a.* FROM event_data a WHERE a.receive_time >= '2018-03-28 00:00:00' AND a.receive ...

  7. Mysql优化系列之查询性能优化前篇3(必须知道的几个事实)

    事实一:临时表没有任何索引 最常见的临时表莫过于在from子句中写子查询,遇到这种情况,Mysql会先将其查询结果放到一张临时表中, 然后将这个临时表当做普通表对待 事实二:执行计划优化 大多数的sq ...

  8. Mysql优化系列之查询性能优化前篇2

    接前一篇,这一篇主要总结下几个经常要用的命令 命令一:explain+sql mysql> explain select * from servers; +----+-------------+ ...

  9. Mysql优化系列之查询性能优化前篇1

    前言 这是优化系列的最后一篇的第1小篇,我们其实可以直接从sql怎么写讲起,why not?但是我还是决定花2个篇幅 问一些问题,带着几个问题循序渐进的往下走. 一个sql语句是怎么被执行的? sql ...

随机推荐

  1. UML-设计模式-本地服务容错-适配器+工厂模式

    问题1:我们的ProductCatalog存储在了数据库里了,但是数据库瘫掉了,怎么办? 解决:本地(Map)---->Local(文件)---->DB 问题2:如果新加了存储Produc ...

  2. JS获取当前时间往后一天的时间

    (图片来自W3school) let myDate = new Date(); myDate.setDate(myDate.getDate() + 1); let year = myDate.getF ...

  3. java RSA 加密解密

    package com.rsa; import java.security.KeyFactory; import java.security.KeyPair; import java.security ...

  4. C语言-数组的深入学习

    深入学习一下数组1.从内存角度来讲:数组变量就是一次分配多个变量,而且这些变量的地址是连续的,也就是存放这些变量的存储单元是依次相连接的.而且这多个变量必须单独访问,不可以一起访问的.因为他们的地址彼 ...

  5. 30 docker swarm service 的创建维护和水平拓展

    运行环境在上两篇文章中已经搭建 1. 创建一个service (与 docker run 类似 ,创建一个 container) docker service create --name demo b ...

  6. share团队冲刺7

    团队冲刺第七天 昨天:加入activity的内容,和队友的代码进行整合实现部分按钮功能 今天:继续完善代码,完善其他页面的功能,对主页和发表页面进行开发 问题:无

  7. offer(背包问题、DP)

    蒜头君很早就想出国,现在他已经考完了所有需要的考试,准备了所有要准备的材料,于是,便需要去申请学校了.要申请国外的任何大学,你都要交纳一定的申请费用,这可是很惊人的.蒜头君没有多少钱,总共只攒了n万元 ...

  8. UML-为什么要使用层?

    1.内聚职责:使关系分离.减少耦合和依赖,提高潜在复用性. 2.领域层和技术服务层可以是分布式的 3.利于团队开发

  9. input标签添加上disable属性在移动端(ios)字体颜色及边框颜色不兼容的解决办法。

    手机一些兼容性问题: 1.苹果手机输入框input:disabled显示模糊问题 input:disabled, input[disabled]{ color: #5c5c5c; -webkit-te ...

  10. 4. 监控利器nagios手把手企业级实战第三部

    1.nagios图形监控显示和管理服务器 虽然能显示,能报警.但是我们企业工作中需要一个历史趋势图. nagios只开放核心,插件是单独的形式,图像也一样,是插件或者整合的方式.所以可能看起来很多,这 ...