1、 当cpu飙升到500%时,先用操作系统命令top命令观察是不是MySQLd占用导致的,如果不是,找出占用高的进程,并进行相关处理。
2、 如果是MySQLd造成的,show processlist,看看里面跑的session情况,是不是有消耗资源的sql在运行。找出消耗高的sql,看看执行计划是否准确,index是否缺失,或者实在是数据量太大造成。
3、 一般来说,肯定要kill掉这些线程(同时观察cpu使用率是否下降),等进行相应的调整(比如说加索引、改sql、改内存参数)之后,再重新跑这些SQL。
4、 也有可能是每个sql消耗资源并不多,但是突然之间,有大量的session连进来导致cpu飙升,这种情况就需要跟应用一起来分析为何连接数会激增,再做出相应的调整,比如说限制连接数等

Was this helpful?

0 / 0

发表回复 0

Your email address will not be published.