排查过程:
1、 使用top命令观察,确定是MySQLd导致还是其他原因。
2、 如果是MySQLd导致的,show processlist,查看session情况,确定是不是有消耗资源的sql在运行。
3、 找出消耗高的sql,看看执行计划是否准确,索引是否缺失,数据量是否太大。
处理:
1、 kill掉这些线程(同时观察cpu使用率是否下降),
2、 进行相应的调整(比如说加索引、改sql、改内存参数)
3、 重新跑这些SQL„
其他情况:
也有可能是每个sql消耗资源并不多,但是突然之间,有大量的session连进来导致cpu飙升,这种情况就需要跟应用一起来分析为何连接数会激增,再做出相应的调整,比如说限制连接数等
MySQL中drop、delete、与truncate的区别?

因此,在不再需要一张表的时候,用drop;在想删除部分数据行时候,用delete;在保留表而删除所有数据的时候用truncate。

Was this helpful?

0 / 0

发表回复 0

Your email address will not be published.