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;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM