`SHOW PROCESSLIST;` 返回列详解(含义 + 单位)

列名 含义 单位/格式 示例值
Id 连接的唯一标识符(线程ID) 整数(无单位) 12345
User 执行该连接操作的 MySQL 用户名 字符串(无单位) 'app_user''root'
Host 客户端来源地址 (格式:[IP或主机名]:[客户端端口] 字符串: - TCP/IP 连接:IP:端口(如 192.168.1.10:5532) - Unix Socket 连接:localhost(无端口) '192.168.1.100:51234'
db 当前连接默认使用的数据库 字符串(NULL 表示未选择数据库) 'orders_db'NULL
Command 当前连接正在执行的命令类型 字符串(常见值): - Query:执行SQL - Sleep:空闲连接 - Binlog Dump:主从复制 - Connect:连接中 'Query''Sleep'
Time 已执行/空闲时间 : - 非 Sleep:当前命令运行时间 - Sleep:空闲时间 秒(seconds) 15(执行中)、350(空闲中)
State 连接当前状态(操作描述) 字符串(常见值): - Sending data:处理/发送数据 - Locked:等待锁 - Writing to net:写入网络 - NULL:空闲 'Sending data'NULL
Info 正在执行的 SQL 语句(前100字符左右) 字符串(NULL 表示未执行语句) 'SELECT * FROM orders...'

KILL 命令详解

用于终止 MySQL 连接或查询。

语法:
sql 复制代码
KILL [CONNECTION | QUERY] processlist_id;
参数说明:
参数 作用 示例
无参数CONNECTION 终止整个连接(断开客户端,回滚未提交事务) KILL 123;
QUERY 仅终止当前查询(连接保持,可继续执行新命令) KILL QUERY 456;
processlist_id 要终止的线程ID(来自 SHOW PROCESSLISTId 列) 123456
使用场景:
  1. 终止异常查询

    sql 复制代码
    KILL QUERY 789;  -- 停止耗时查询,连接不中断
  2. 踢出危险连接

    sql 复制代码
    KILL 101;  -- 强制断开用户连接(权限变更后立即生效)
  3. 清理空闲连接

    sql 复制代码
    KILL 202;  -- 断开长时间空闲的连接(配合 `Time` 列判断)
权限要求:
  • SUPER 权限 (MySQL 5.7)或 CONNECTION_ADMIN 权限(MySQL 8.0+)才能终止其他用户的连接。
注意事项:
  1. 终止大事务可能导致回滚耗时较长(检查 State 是否为 Rolling back)。
  2. 系统关键线程(如复制线程 Binlog Dump)被终止可能导致服务异常。
  3. 无法终止自己的当前连接(需另开会话操作)。

操作流程示例

  1. 查看活动连接

    sql 复制代码
    SHOW FULL PROCESSLIST;  -- 显示完整SQL(Info列)
  2. 定位问题连接

    • Time 值 + Query 命令 → 长时间运行查询
    • Time 值 + Sleep 命令 → 空闲连接
    • 危险SQL(如 DROP TABLE) → 立即终止
  3. 执行终止操作

    sql 复制代码
    KILL 303;       -- 终止整个连接
    KILL QUERY 404; -- 仅终止查询

📌 提示:生产环境操作前务必确认连接用途,避免误杀重要任务!

相关推荐
杰克尼1 小时前
mysql-条件查询案例
数据库·mysql
云心雨禅5 小时前
网站突然崩了,此站点遇到了致命错误!
服务器·mysql
Menior_8 小时前
【补充】数据库中有关系统编码和校验规则的简述
数据库·mysql·oracle
Kay_Liang9 小时前
从聚合到透视:SQL 窗口函数的系统解读
大数据·数据库·sql·mysql·数据分析·窗口函数
诺亚凹凸曼10 小时前
MySQLinnodb引擎普通索引和唯一索引的区别
数据库·mysql
星空下的曙光14 小时前
MySQL → SQL → DDL → 表操作 → 数据类型 知识链整理成一份系统的内容
数据库·sql·mysql
小志的博客18 小时前
mysql——count(*)、count(1)和count(字段)谁更快?有什么区别?
mysql
三体世界21 小时前
Mysql基本使用语句(一)
linux·开发语言·数据库·c++·sql·mysql·主键
快乐就是哈哈哈1 天前
从零部署 MySQL 数据库:Linux 安装与防火墙策略全解析
linux·mysql