<返回更多

一步一步带你解决linux系统CPU资源耗尽难题

2019-12-26    
加入收藏
一步一步带你解决linux系统CPU资源耗尽难题

 

在日常运维过程中,经常碰到的问题,就是cpu使用率高达100%,那遇到这个问题时,需要怎么去解决呢,不知道方法的小伙伴,就会感觉一筹莫展。如果知道方法,一步一步的去排查,很容易就能解决linux系统CPU资源耗尽的故障。

首先我们要定位到底什么原因导致cpu使用率超标,先定位看看是什么进程消耗掉了cpu资源。

第一步可以使用ps命令查看一下

ps aux|sort -n -k4|tail -20

上述命令可以查看消耗cpu资源最多的20个进程,不过是逆序的,这样能定位出是什么进程引起的CPU资源耗尽。

喜欢top的同学,也可以用top进行查看,top工具使用也是很方便,这里就简单介绍一下top的使用

在top里按cpu使用率排序

top进入top界面之后,使用shift+p就可以按cpu进行排序

在top里按内存使用率排序

top进入top界面之后,使用shift+m就可以按内存进行排序

到这里基本就可以定位到是什么进程占用了cpu资源,如果是MySQL进程消耗大量的cpu资源,该怎么去定位呢。

数据库占用CPU资源,90%以上情况是因为慢sql导致,原理也很简单,因为慢sql会导致全表扫描,扫描数据量太大,内存排序,磁盘排序,锁争用等。那怎么去排查呢,使用下面命令

show full processlist

查看到有sending data,copying to tmp table,copying to tmp table on disk,sorting result,using filesort,locked有这种状态的sql语句基本都是元凶了,杀掉这些慢sql查询就能解决问题,当然还得联系开发对相关程序进行优化处理。

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>