mysql CPU太高排查办法

【1】问题描述

首先,查看top,下图来自网络

  

 

 

  为什么会有%CPU 375???

  还可以超过100%的? 这是因为,有多核CPU。如图,top后,按数字1,即可出现下图。

    

 

 

【2】排查办法(当前CPU爆高)

【2.1】查看锁情况及对应语句

SELECT * FROM information_schema.INNODB_TRX;

 查看一下有没有执行时间特别长的语句,或者资源耗费特别大的。找出来优化

【2.2】查看当前运行语句

select * from information_schema.processlist where command!='Sleep';

show processlist;

 查看一下有没有持续存在的语句,或者一看就觉得性能很差的语句。找出来优化

【2.3】优化一下tmp_table_size

show variables like '%tmp%';

  

 

主要是 tmp_table_size,这里的16777216=16*1024*1024=16M

可以设置高一点,比如128/256M.

set global tmp_table_size=256*1024*1024;

 

posted @ 2019-11-14 15:35  郭大侠1  阅读(5728)  评论(0编辑  收藏  举报