重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
MySQL是一款常用的关系型数据库管理系统,它的 CPU 平均使用率指的是 MySQL 进程在某一时间段内 CPU 的平均使用率。通常情况下,MySQL CPU 平均使用率应该保持在合理的范围内,过高的 CPU 使用率可能会导致 MySQL 性能下降。
创新互联公司专业为企业提供潮阳网站建设、潮阳做网站、潮阳网站设计、潮阳网站制作等企业网站建设、网页设计与制作、潮阳企业网站模板建站服务,10多年潮阳做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
如果你想要查看 MySQL CPU 平均使用率,可以使用以下方法:
使用 MySQL 的状态监控工具:MySQL 提供了一些状态监控工具,如 mysqladmin、mysqltuner 等,这些工具可以帮助你查看 MySQL 的 CPU 使用情况。
标红的是mysql的线程id
解释:看事务表INNODB_TRX,里面是否有正在锁定的事务线程,看看ID是否在show processlist里面的sleep线程中,如果是,就证明这个sleep的线程事务一直没有commit或者rollback而是卡住了,我们需要手动kill掉。
搜索的结果是在事务表发现了很多任务,这时候最好都kill掉。
批量删除事务表中的事务
我这里用的方法是:通过information_schema.processlist表中的连接信息生成需要处理掉的MySQL连接的语句临时文件,然后执行临时文件中生成的指令。
kill掉以后再执行SELECT * FROM information_schema.INNODB_TRX; 就是空了。
这时候系统就正常了
根据返回结果中的PROCESLIST_INFO等信息,来判断其执行的语句是否可以进行优化
如果觉得先从分析线程入手比较麻烦,也可以直接通过查询当前正在执行的查询入手
直接找出当前下大执行的查询,按执行时间倒充值,占用CPU高的查询往往耗时也比较长
Mysql thread 与 OS thread
mysql show processlist排查问题