ITPub博客

首页 > 数据库 > MySQL > 如何查找MySQL数据库耗费CPU的SQL

如何查找MySQL数据库耗费CPU的SQL

原创 MySQL 作者:T1YSL 时间:2025-08-13 18:07:39 0 删除 编辑

1.Top -H -p pid

     查找到耗费cpu资源的mysqld进程里的线程id

例如是

2122 mysql     20   0 2195448  74992   2348 R 83.1 26.4   0:03.78 mysqld           

          

2.查看 2122线程的 具体的sql

( 线程类型,分为BACKGROUND(后台线程)和FOREGROUND(用户线程),我们要关注的是用户线程)

mysql> SELECT a.name,

              a.thread_id,

              a.thread_os_id,

              a.processlist_id,

              a.type,

              b.user,

              b.host,

              b.db,

              b.command,

              b.time,

              b.state,

              b.info

         FROM performance_schema.threads a

         LEFT JOIN information_schema.processlist b

           ON a.processlist_id = b.id

        where a.type = 'FOREGROUND'

          and a.thread_os_id =2122; 


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69990629/viewspace-3093397/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论
中国开源软件推进联盟PG分会系列技术丛书《快速掌握PostgreSQL版本新特性》一书副主编。数据库技术专家。数据库认证讲师、恩墨学院数据库讲师。擅长MySQL数据库、PostgreSQL等开源数据库。拥有MySQL-OCP 、PostgreSQL-PGCM等数据库认证。

注册时间:2020-12-12

  • 博文量
    152
  • 访问量
    160682