cpu飙升怎么解决

排查过程:

        1.使用top命令观察,确定是mysqld导致还是其他原因

                1.top

                2.o

                3.COMMAND=<service_name>

        2.如果是mysqld导致,进入mysql,show processlist;查看session情况,确定是不是有消耗资源的sql在运行

        3.找出消耗资源的sql,看看执行计划是否准确,索引是否缺失,数据量是否太大

        

+----+------+-----------+----+---------+------+----------+------------------+
| Id | User | Host      | db | Command | Time | State    | Info             |
+----+------+-----------+----+---------+------+----------+------------------+
| 4  | root | localhost | db1| Query   | 0    | executing| SELECT * FROM tbl|
| 5  | app  | localhost | db2| Sleep   | 2    |          | NULL             |
+----+------+-----------+----+---------+------+----------+------------------+

        4.kill掉线程,同时观察是否cpu使用率下降

        5.进行相应的调整(加索引、改sql等)

        6.重新跑这些sql

        7.也有可能是突然有大量session连接导致cpu飙升,具体情况分析连接数为何激增,在做出相应的调整,比如限制连接数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值