mysql 查看锁_MySQL反应慢的排查思路
一、导致MySQL慢可能的因素有
1、计算资源不足
2、系统层面未进行基本的优化,或不同进程间资源抢占
3、MySQL配置不科学(附神器:
http://imysql.com/my-cnf-wizard.html)
4、垃圾SQL满天飞
二、查看系统层面负载手段
1、top查看整体负载情况,快速确认哪个进程系负载高
2、free查看内存情况,是否有内存泄露和用了swap等风险
3、vmstat/sar查看当前系统瓶颈到底在哪,如CPU、IO、网络等
4、终极神器perf top查看cpu消耗在哪些系统调用函数
三、查看MySQL的整体情况
1、观察show processlist输出中是否有临时表、排序、大量逻辑读、锁等待等状态
2、观察show engine innodb status输出中是否有大事务、长事务、锁等待等状态
四、干掉垃圾SQL,常用手段
1、用explain、desc观察执行计划
2、用profiling定位sql执行的瓶颈
3、用pt-query-digest分析慢sql
五、几个窍门
1、mysqld进程消耗CPU长时间超过90%的话,99.9%是因为没用好索引
2、cpu的%sys高的话,大概率是swap或中断不均衡导致,也可能是有多个索引且超高并发写入(更新),或者有很严重的锁等待事件
3、最⼤的瓶颈通常是在磁盘I/O上,因此尽量用高速磁盘设备
4、如果物理磁盘无法再升级,则通过增加内存提升性能容量
5、遇到无法诊断的问题时,试试⽤perf top来观测跟踪
6、SQL执行慢,有时未必是效率低,也可能是因为锁等待,甚⾄是磁盘满了
mysql 查看锁_MySQL反应慢的排查思路相关推荐
- Oracle/Mysql查看锁表与解锁表
Oracle/Mysql查看锁表与解锁表 在ORCLA与MYSQL中,如何查看锁表与解锁表 1 Oracle 查看锁表进程SQL: select * from v$session t1, v$lock ...
- mysql 查看锁表日志_MYSQL 表锁情况查看
查看锁表情况 mysql> show status like 'Table%'; +----------+--–+ | Variable_name | Value | +----------+- ...
- mysql a锁_MYSQL中的锁
前言 刚开始接触MYSQL,对其锁机制并不了解,在项目里面,针对死锁以及锁竞争,约定了两条规则. 对涉及多个业务表的更新,要遵守一定的顺序,如按照TABLE-A,TABLE-B,TABLE-C的次序 ...
- mysql mdl 锁_MySQL源码学习:MDL字典锁
什么是MDL MDL,Meta Data lock,元数据锁,一般称为字典锁.字典锁与数据锁相对应.字典锁是为了保护数据对象被改变,一般是一些DDL会对字典对象改变,如两个TX,TX1先查询表,然后T ...
- mysql查看锁表与解锁
查看锁表语句 show OPEN TABLES where In_use > 0; 找到锁表的进程 show processlist; 删除锁表进程 kill 51045123; 转载于 ...
- mysql 全局锁_Mysql全局锁和表级锁
以前对Mysql的锁的认识,只了解表锁和行锁,其实Mysql的锁的种类还是不少的,有全局锁,表级锁,行级锁,还有元数据锁,间隙锁,临界锁. 一 全局锁 Mysql的全局锁是对整个实例加锁,加锁之后,数 ...
- mysql mdl锁_MySQL锁系列3 MDL锁
MySQL为了保护数据字典元数据,使用了metadata lock,即MDL锁,保证在并发的情况下,结构变更的一致性. MDL锁的加锁模式和源码上的组织上和上一篇blog中MySQL表锁的实现方式一致 ...
- mysql查看备份文件_MySQL的备份与还原以及常用数据库查看命令
MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MySQL\MySQL Serv ...
- mysql mdl 锁_MySQL锁系列3 MDL锁
MySQL为了保护数据字典元数据,使用了metadata lock,即MDL锁,保证在并发的情况下,结构变更的一致性. MDL锁的加锁模式和源码上的组织上和上一篇blog中MySQL表锁的实现方式一致 ...
最新文章
- iOS:转载:IOS谓词--NSPredicate
- 真正的问题应该在我身上……
- java无锁消费者框架_无锁并行框架多生产者多消费者模型
- 6410的系统时钟设置(中)---相关寄存器介绍
- 动态修改路由_tutorial第二部分-路由参数
- ExtJs异步ajax调用和同步ajax调用公用方法(转)
- mac搭建c语言开发环境
- oracle自我评价简历,程序员简历自我评价
- android 模拟器声音设置,android模拟器用mediaplayer播放没有声音
- Qt Creator实现动画效果(单个动画)
- python异常大总结
- 2021邵阳市区三中高考成绩查询,2021年邵阳市普通高考科目及各科分数
- Linux实现ppp拨号4G模块联网全球APN之中国(China)
- Ubuntu_ROS 学习
- java 循环new对象_java中new一个对象放在循环体里面与外面的区别
- Mini LED,显示技术的春天?!
- 维修工程师,比你想象的要赚钱
- 报错解决Error parsing Mapper XML
- java script基础入门·2
- 计算机设备管理器怎么删鼠标,在电脑的设备管理器中怎么查看鼠标设备