如何查看当前运行sql_mysql执行状态查询

发布时间 - 2026-01-23 00:00:00    点击率:
最常用方法是执行 SHOW PROCESSLIST 命令,可查看所有连接的线程ID、用户、主机、数据库、命令类型、运行时间、状态及SQL语句;管理员可用 SHOW FULL PROCESSLIST 或查询 information_schema.PROCESSLIST 视图并过滤,关键状态如 Locked、Sending data 等提示性能问题,必要时用 KILL 终止异常线程。

要查看 MySQL 当前正在运行的 SQL 语句及其执行状态,最常用、最直接的方法是使用 SHOW PROCESSLIST 命令。它能列出所有客户端连接及每个连接正在执行的语句、状态、耗时等关键信息。

使用 SHOW PROCESSLIST 查看实时执行状态

在 MySQL 客户端(如 mysql 命令行、Navicat、DBeaver 等)中执行:

SHOW PROCESSLIST;

该命令返回结果包含以下重要列:

  • Id:线程唯一标识(即 connection id)
  • User:发起连接的用户名
  • Host:客户端 IP 和端口
  • db:当前默认数据

  • Command:当前执行的命令类型(如 Query、Sleep、Connect)
  • Time:该线程处于当前状态的秒数(重点关注长时间运行的 Query)
  • State:线程内部执行状态(如 Sending data、Sorting result、Locked、Copying to tmp table 等)
  • Info:正在执行的 SQL 语句(若太长会被截断;用 SHOW FULL PROCESSLIST 可显示完整语句)

查看更详细/全量的会话信息(需 SUPER 或 PROCESS 权限)

普通用户可能只能看到自己的会话,而管理员可查看全部。若权限足够,推荐使用:

SHOW FULL PROCESSLIST;

或查询性能视图(MySQL 5.7+,推荐):

SELECT id, user, host, db, command, time, state, info 
FROM information_schema.PROCESSLIST 
ORDER BY time DESC;

这个方式支持 WHERE 过滤(比如查运行超 60 秒的 SQL):

SELECT * FROM information_schema.PROCESSLIST 
WHERE TIME > 60 AND COMMAND = 'Query';

识别慢查询或异常状态的关键 State 值

State 列反映 SQL 执行所处的内部阶段,常见且需关注的状态有:

  • Sending data:通常表示正在处理 SELECT 并准备发送结果(不一定是慢,但长时间停留可能意味着扫描大量数据或未走索引)
  • Sorting result:正在对结果集排序(可能缺排序字段索引)
  • Creating tmp table:创建了内部临时表(常见于 GROUP BY、DISTINCT、UNION 或大结果集排序)
  • Copying to tmp table:正把数据拷入临时表(性能开销大)
  • Locked:被表锁或元数据锁(MDL)阻塞(尤其在 DDL 操作期间)
  • Waiting for table metadata lock:典型阻塞态,说明有长事务或未提交事务占着 MDL

终止异常运行的 SQL(谨慎操作)

若发现某条 SQL 卡死或消耗过高资源,可通过其 Id 终止:

KILL 12345;

其中 12345 是对应线程的 Id。注意:
– KILL 只中断语句执行,不回滚事务(除非是自动提交模式)
– 若状态为 Waiting for table metadata lock,往往需先 KILL 掉持有锁的长事务线程
– 生产环境执行前建议确认影响范围


# mysql  # navicat  # 端口  # ssl  # ai  # sql语句  # 有锁  # sql  # for  # select  # union  # 线程  # table  # 数据库  # 长时间  # 客户端  # 最常用  # 自己的  # 或未  # 推荐使用  # 不回  # 在对  # 过高  # 可通过 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: JavaScript如何实现音频处理_Web Audio API如何工作?  Laravel如何创建和注册中间件_Laravel中间件编写与应用流程  独立制作一个网站多少钱,建立网站需要花多少钱?  如何快速打造个性化非模板自助建站?  Laravel Session怎么存储_Laravel Session驱动配置详解  详解Android——蓝牙技术 带你实现终端间数据传输  创业网站制作流程,创业网站可靠吗?  详解Android图表 MPAndroidChart折线图  Laravel如何获取当前登录用户信息_Laravel Auth门面使用与Session用户读取【技巧】  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  如何快速搭建高效WAP手机网站?  php增删改查怎么学_零基础入门php数据库操作必知基础【教程】  ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集  高防服务器:AI智能防御DDoS攻击与数据安全保障  微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  米侠浏览器网页背景异常怎么办 米侠显示修复  小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像  Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用  Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】  如何在 React 中条件性地遍历数组并渲染元素  如何用wdcp快速搭建高效网站?  微信小程序 配置文件详细介绍  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  Laravel怎么实现API接口鉴权_Laravel Sanctum令牌生成与请求验证【教程】  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载  Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】  猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】  如何续费美橙建站之星域名及服务?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  如何在云服务器上快速搭建个人网站?  个人网站制作流程图片大全,个人网站如何注销?  JS经典正则表达式笔试题汇总  在线制作视频网站免费,都有哪些好的动漫网站?  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议  如何用JavaScript实现文本编辑器_光标和选区怎么处理  Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  jquery插件bootstrapValidator表单验证详解  香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  Laravel如何实现多级无限分类_Laravel递归模型关联与树状数据输出【方法】  利用 Google AI 进行 YouTube 视频 SEO 描述优化  JS实现鼠标移上去显示图片或微信二维码  北京企业网站设计制作公司,北京铁路集团官方网站?  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南