一用户RDS每天隔一段时间就会出现IOPS 100%的问题,求助到阿里云,这类问题的出现有以下一些排查思路:


排查思路:

   (1).慢SQL问题:通过优化索引,子查询,隐士转换,分页改写等优化;(2).DDL:create index,optimze table,alter table add column,create as select ;

一.慢SQL

  根据以上的排查思路我们首先去定位在IOPS高的时间段慢SQL,通过排查发现慢日志中根本就没有明显的慢日志出现,数据库慢日志设置的时间阀值是1秒,难道是我们的阀值太大了吗?不对,IOPS张高期间数据库的QPS并没有明显增加,所以看来并不是慢日志的问题。


二.DDL

 慢日志中没有发现线索,那么是不是DDL导致的,用户有定时的DDL任务或者create as select的操作,这个可以通过审计日志进行排查跟踪,结果还没有发现问题所在,高峰期间并没有DDL操作。

三.审计日志

 经过上面两步骤的排查并没有结果,所以这个时候只能排查一些IOPS高峰期间的所有SQL了,这是没有的办法的办法。把出问题时间段的SQL审计日志拉出来进行分析,结果让人很惊喜:


我们发现有三条SQL执行时间超过了900秒,同时扫描的行数也超过了3kw,很明显iops高的原因就是这三条SQL在捣蛋:

mysql> explain SELECT * FROM user WHERE id != 6088883 AND name like '34218864' OR id =34218864 LIMIT 0, 1 ;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE wn_user range PRIMARY PRIMARY 4 NULL 34234220 Using where

可以看到上面捣蛋SQL的执行计划与审计日志中的check_rows相同,所以通知用户将该SQL下线掉。
最后还有一个疑问,为什么慢日志里面没有记录着三条捣蛋sql,还是通过审计日志发现,这三条sql都没有执行成功,所以它是不会记录到慢日志中的。

捣蛋SQL导致实例iops 100%相关推荐

  1. mysql iops_MySQL实例IOPS使用率高的原因和解决方法

    问题描述 MySQL实例在日常使用中会出现实例IOPS使用率高的情况,本文将介绍造成该状况的主要原因和解决方法. 问题原因 实例内存满足不了缓存数据或排序等需要,导致产生大量的物理IO. 查询执行效率 ...

  2. Oracle v12.2 Bug 27163928触发ORA-4031 导致实例crash.

    不啰嗦,具体分析过程如下: 1. alert log 2018-02-22T16:00:23.021370+08:00 Errors in file /u01/app/oracle/diag/rdbm ...

  3. SQL触发器实例讲解1

    SQL触发器实例1 定义: 何为触发器?在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序.触发器是一个特殊的存储过程.        常见的触发器有三种:分别应 ...

  4. ORA-07445导致实例崩溃的解决【The solution of instance crush by ORA-07445】

       昨天(2007-12-27日)维护某省移动一个平台的工程师报告数据库实例不可用,只能重新启动!这还得了,业务无论如何不能停.     赶快登录到那个服务器上去检查.     通过日志分析,我看到 ...

  5. SQL存储过程实例具体解释

    SQL存储过程实例具体解释 本文用3个题目,从建立数据库到创建存储过程,具体解说数据库的功能. 题目1 学校图书馆借书信息管理系统建立三个表: 学生信息表:student 字段名称 数据类型 说明 s ...

  6. SQL触发器实例讲解

    定义: 何为触发器?在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序.触发器是一个特殊的存储过程.        常见的触发器有三种:分别应用于Insert , ...

  7. 1000+Redis实例,100+集群,Redis 在海量数据和高并发下的优化实践

    墨墨导读:Redis 对于从事互联网技术工程师来说并不陌生,几乎所有的大中型企业都在使用 Redis 作为缓存数据库. 但是对于绝大多数企业来说只会用到它的最基础的 KV 缓存功能,还有很多 Redi ...

  8. 世界变化快,不学“SQL托管实例”跟不上时代

    世界变化快,不学"SQL托管实例"跟不上时代 云时代,云变化会很快,稍微不留意,就有新的东西发布,今天我们来看看Azure SQL新功能,叫做:Azure SQL 托管实例. Az ...

  9. 如何对SQL Server实例执行性能测试

    介绍 (Introduction) 目标听众 (Intended audience) This document is intended for application developers and ...

最新文章

  1. 戴尔存储副总裁谈戴尔-EqualLogic一周年庆
  2. MR案例:CombineFileInputFormat
  3. USB相关结构体之struct usb_device
  4. 自然语言处理库——NLTK
  5. DCMTK:DSRNumericMeasurementValue类的测试程序
  6. Iris recognition papers in the top journals in 2017
  7. 怎没用计算机算e的,小E教你们如何用计算机算虚数
  8. 精通webpack的5大关键点
  9. 4.4.2 数值处理
  10. ios 团购信息客户端demo(二)
  11. AutoCAD 2008中文版实用自学手册•机械设计篇
  12. EAS序时簿界面显示,不再忽略数值零
  13. 利用python批量查询企业信息_python批量查询百度收录
  14. 总论点和分论点_将破坏性的论点变成富有成效的对话
  15. [LeetCode]739. 每日温度
  16. C++ 定义复数的加减乘除基本运算
  17. 疯狂动物城简介第一台通用计算机,疯狂动物城 简介
  18. fastjson 属性大写问题
  19. 神经网络每次输出不一样,神经网络输出值相同
  20. android 桥接,路由器一键桥接Android实现

热门文章

  1. 【电子画册免费制作】云展网教程 | 添加注释按钮
  2. html js require函数,Require.js的基本用法详解
  3. 如何解决网站提示“不安全”
  4. 微服务远程调用的用法
  5. C/C++ 中‘0’ “0” ‘\0’ 0的辨析
  6. MVC模式下对pageOffice插件的简单整合使用
  7. 服务端大量无效ESTABLISHED连接,是人性泯灭还是道德沦丧
  8. 数学建模英文论文写作002之Introduction引言
  9. 计量经济学知识总结(更新中)
  10. vue中静态资源文件中的图片element.style.backgroundImage设置url无效问题