Mysql数据库cpu飙升怎么解决

排查过程

(1)使用top命令观察,确定是mysql导致还是其他原因。
(2)如果是mysql导致的,show processlist,查看session情况,确定是不是有消耗资源的sql在运行。
(3)找出消耗高的sql,看看执行计划是否准确,索引是否缺失,数据量是否太大。

处理

(1)kill掉这些线程(同时观察cpu使用率是否下降)
(2)进行相应的调整(比如加索引、改sql、改内存参数)
(3)重新执行这些sql

也有可能是每个sql消耗资源不多,但是突然直接有大量的session进来导致cpu飙升,这个情况要根据应用联系起来分析为何连接数会激增,再做出相应的调整,比如限制连接数等。

你可能感兴趣的:(数据库,mysql)