`
mmBlue
  • 浏览: 167202 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

记录一次线上慢查询解决

 
阅读更多

  今天早上公司数据库服务器top查看,cpu 99.8% load average 123,非常严重,首先想到的是mysql肯定是死锁了,因为我入职不久,对很多设计不是很清楚,也不知道是哪张表,翻阅文章后是如下解决的:

 

查询比较久的事务

SELECT * FROM INFORMATION_SCHEMA.INNODB_TRX

发现sql 

SELECT EndDate FROM StockUpDown WHERE StockID = '002392' AND MarketID = 1 ORDER BY EndDate DESC LIMIT 1

一直等待中,查询需要9s,于是查看表,加入了索引,查询立马0.11s,于是解决了。

 

查看正在锁的事务

SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCKS;

查看等待锁的事务

 

SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics