永洪社区

标题: 快速定位数据库消耗 CPU 最高的 SQL语句 [打印本页]

作者: 喝酸奶不舔盖    时间: 2024-5-30 16:50
标题: 快速定位数据库消耗 CPU 最高的 SQL语句
如何快速定位消耗 CPU 最高的 sql 语句,怎么做?看看下面的介绍。
概述
如果是Oracle数据库我们可以很容易通过sql来定位到当前数据库中哪些消耗CPU高的语句,而mysql数据库可以怎么定位呢?这里用一个简单例子说明下...
主要是了解如何定位的思路,具体看官网介绍..
参考:
https://www.percona.com/blog/2020/04/23/a-simple-approach-to-troubleshooting-high-cpu-in-mysql/
主要意思是针对定位CPU的问题,Percona增加了对通过信息的TID列将processlist ID映射到OS线程ID的支持,而MySQL在5.7版本后在PERFORMANCE_SCHEMA.THREADS表加了一个THREAD_OS_ID新列来实现,以下方法适用于在其他内核正常运行时,某个特定CPU的查询过载的情况。
find out which session is using the most CPU resources in my database?
定位线程

pidstat -t -p <mysqld_pid> 1  5  
(, 下载次数: 17)