当前位置: 首页 > ops >正文

mysql 5.7 查询运行时间较长的sql

开发过程遇到sql  执行时间长,又取消不了的情况  可使用  kill query ID  杀死进程

获取正在运行的sql

SELECT ID,                           -- 进程ID:MySQL服务器分配给每个连接的唯一标识符,用于区分不同的客户端连接USER,                         -- 用户账号:建立当前数据库连接的用户名称TIME,                         -- 执行时间(秒):该查询已经执行的持续时间,单位是秒LEFT(INFO, 100) AS sql_preview, -- SQL预览:当前正在执行的SQL语句的前100个字符,用于快速了解查询内容CASE WHEN TIME > 300 THEN 'CRITICAL - 立即处理'  -- 执行超过5分钟:严重级别,需要立即干预WHEN TIME > 60 THEN 'WARNING - 需要关注'    -- 执行1-5分钟:警告级别,需要关注ELSE '正常'                                -- 执行时间正常:无需特别处理END AS severity               -- 严重程度:根据执行时间自动分类的严重级别
FROM INFORMATION_SCHEMA.PROCESSLIST  -- 系统视图:包含MySQL服务器中所有活跃连接的信息
WHERE TIME > 30                    -- 过滤条件:只显示执行时间超过30秒的查询
AND COMMAND != 'Sleep'            -- 排除条件:过滤掉空闲的睡眠连接(没有活跃查询的连接)
AND INFO IS NOT NULL              -- 排除条件:确保只显示有实际SQL语句的查询
ORDER BY TIME DESC;               -- 排序方式:按执行时间降序排列,最耗时的查询排在最前面

杀死进程

kill query  12098013

各字段详细解释:

1. ID (进程ID)

  • 作用:MySQL服务器为每个客户端连接分配的唯一数字标识

  • 重要性:用于识别特定连接,可以通过 KILL ID 命令终止问题查询

  • 示例值:12345

2. USER (用户账号)

  • 作用:显示建立数据库连接的用户名称

  • 重要性:帮助识别是哪个用户或应用程序执行的慢查询

  • 示例值app_user@192.168.1.100

3. TIME (执行时间)

  • 作用:查询已经运行的秒数

  • 重要性:是判断查询性能的关键指标,时间越长说明问题越严重

  • 单位:秒

  • 监控阈值

    • 30秒:需要关注

    • 60秒:警告级别

    • 300秒:严重级别

4. sql_preview (SQL预览)

  • 作用:显示正在执行的SQL语句的前100个字符

  • 重要性:快速了解查询内容,帮助诊断问题

  • 限制:只显示前100字符,完整SQL可能需要进一步查询

5. severity (严重程度)

  • 作用:根据执行时间自动分类的严重级别

  • 分级标准

    • 正常:30-60秒,需要监控

    • 警告:1-5分钟,需要关注和优化

    • 严重:超过5分钟,立即处理

过滤条件解释:

1. WHERE TIME > 30

  • 只关注执行时间超过30秒的查询,避免显示大量正常查询

2. AND COMMAND != 'Sleep'

  • 排除空闲连接(Sleep状态),只显示活跃查询

3. AND INFO IS NOT NULL

  • 确保只显示有实际SQL语句的查询,排除系统进程

http://www.xdnf.cn/news/18577.html

相关文章:

  • 【计算机408数据结构】第三章:基本数据结构之栈
  • 苍穹外卖项目实战(日记十)-记录实战教程及问题的解决方法-(day3-2)新增菜品功能完整版
  • 启动Flink SQL Client并连接到YARN集群会话
  • 拓展:simulink中将仿真环境离散化
  • K8S的部署与常用管理
  • VS2022的MFC中关联使用控制台并用printf输出调试信息
  • Redis 高可用篇
  • rust语言 (1.88) egui (0.32.1) 学习笔记(逐行注释)(十四)垂直滚动条
  • HarmonyOS实战(DevEco AI篇)—深度体验DevEco CodeGenie智能编程助手
  • 算法训练营day60 图论⑩ Bellman_ford 队列优化算法、判断负权回路、单源有限最短路(修改后版本)
  • `strcat` 字符串连接函数
  • 蔬菜溯源系统的开发与设计小程序
  • 新疆地州市1米分辨率土地覆盖图
  • Placement new是什么
  • 这也许就是DeepSeek V3.1性能提升的关键:UE8M0与INT8量化技术对比与优势分析
  • Python Excel
  • 何为‘口业’,怎么看待它
  • C++哈希表:unordered_map与unordered_set全解析
  • 搜索算法在实际场景中的应用
  • 基于ResNet50的血细胞图像分类模型训练全记录
  • 【Kubernetes知识点】Pod调度和ConfigMaps
  • 结构主义神话学的范式突破与后现代转向:从二元对立到数字神话素的符号学革命
  • 【深入理解 Linux 网络】收包原理与内核实现(下)应用层读取与 epoll 实现
  • 20250823解决荣品RD-RK3588-MID开发板在充电的时候大概每10s屏幕会像水波纹闪烁一下
  • douyin_search_tool:用python开发的抖音关键词搜索采集软件
  • 使用tensorRT10部署yolov5实例分割模型(2)
  • k8s总结
  • HTTP的状态码有哪些,并用例子说明一下
  • DS18B20温度传感器详解
  • 注意力机制:捕获长距离依赖关系的革命性技术