暂无图片
如果MySQL数据库的服务器CPU占用非常高,该如何处理?
我来答
分享
2023-03-15
如果MySQL数据库的服务器CPU占用非常高,该如何处理?

如果MySQL数据库的服务器CPU占用非常高,该如何处理?

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
宇飞

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

暂无图片 评论
暂无图片 有用 1
暂无图片
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏