开发者社区> 问答> 正文

哇!MySQL数据库cpu飙升到500%的话怎么处理?

已解决

MySQL数据库cpu飙升到500%的话怎么处理

展开
收起
可乐大侠 2021-10-01 16:48:17 1114 0
1 条回答
写回答
取消 提交回答
  • 网络规划设计师、敏捷专家、CISP、ITSS服务经理、ACA全科目、ACP4项、ACE、CBP、CDSP、CZTP等。拥有 PRINCE2 Foundation/Practitioner、CCSK、ITIL、ISO27001、PMP等多项国际认证。 专利5+、期刊10+、知识产权师。核心期刊审稿人。
    采纳回答

    您好,

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

相关电子书

更多
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载
云时代的数据库技术趋势 立即下载
超大型金融机构国产数据库全面迁移成功实践 立即下载

相关镜像