达梦8最终锁阻塞巡检 SQL

SELECT CASE WHEN l.blocked='1' THEN 'WAITER' ELSE 'HOLDER' END AS role,

s.sess_id,

l.trx_id,

l.lmode,

NVL(o.object_name,'-') AS object_name,

SUBSTR(s.sql_text,1,60) AS sql60

FROM (

SELECT *

FROM v$lock

WHERE TRIM(TRANSLATE(blocked,'01',' ')) IS NULL -- 仅 0 或 1

AND TRIM(TRANSLATE(table_id ,'0123456789',' ')) IS NULL

) l

LEFT JOIN dba_objects o

ON TRIM(l.table_id) = TO_CHAR(o.object_id)

JOIN v$sessions s

ON s.trx_id = l.trx_id

WHERE l.blocked='1' OR l.lmode >= 5

ORDER BY l.trx_id, l.blocked;

好,既然这段 SQL 已经能跑通,就把"最终可用版"整理成一行,方便你直接贴进代码------列类型映射也一起给你:


  1. 最终锁阻塞巡检 SQL(单行可复制)

sql

复制

复制代码
SELECT CASE WHEN l.blocked='1' THEN 'WAITER' ELSE 'HOLDER' END AS role, s.sess_id, l.trx_id, l.lmode, NVL(o.object_name,'-') AS object_name, SUBSTR(s.sql_text,1,60) AS sql60 FROM (SELECT * FROM v$lock WHERE TRIM(TRANSLATE(blocked,'01','  ')) IS NULL AND TRIM(TRANSLATE(table_id,'0123456789',' ')) IS NULL) l LEFT JOIN dba_objects o ON TRIM(l.table_id)=TO_CHAR(o.object_id) JOIN v$sessions s ON s.trx_id=l.trx_id WHERE l.blocked='1' OR l.lmode>=5 ORDER BY l.trx_id,l.blocked;

  1. 列类型与中文含义(对应结果集)

表格

复制

列名 达梦数据类型 中文说明
role VARCHAR(6) 角色:HOLDER=持锁者,WAITER=等待者
sess_id BIGINT 会话 ID,可关联 V$SESSIONS 杀会话
trx_id BIGINT 事务 ID,同一事务内多把锁共享
lmode CHAR(2) 锁模式:4=S,5=SRX,6=X(>=5 即高粒度)
object_name VARCHAR(512) 被锁对象名(表/索引/分区)
sql60 VARCHAR(240) 当前 SQL 前 60 字节,快速定位业务语句

  1. 使用小贴士
  • 结果为空 → 当前没有高粒度锁或阻塞,系统健康。

  • 出现 WAITER → 同一 trx_id 下找 HOLDER,对比 lmode 即可判断是否需要 kill 会话。

  • 想杀锁:CALL SP_CLOSE_SESSION(sess_id);(需 SYSDBA)

相关推荐
誰能久伴不乏2 小时前
桌面客户端的运行日志系统:SQLite 分块 + 独立写线程 + 文本降级
数据库·c++·qt·架构·sqlite
程序员清风9 小时前
数据处理脚本工程化:日志、配置、命令行与测试
服务器·开发语言·数据库
正在走向自律10 小时前
数据集成产品的技术底座:从日志解析原理到 KFS 同步链路搭建(含建表与增删改查完整代码)
数据库·oracle·信创·数据集成·国产数据库·kingbasees·全量+增量同步
程序员塔塔喵10 小时前
【MySQL篇|第七篇】MySQL事务
数据库·mysql·mysql事务
独隅11 小时前
Claude API 实战教程:从入门到完整项目
android·java·数据库·claude·claude code
_孤傲_11 小时前
快速掌握 MySQL 语法
数据库·后端·mysql
数字新视界13 小时前
一体化机柜在数据中心运维中的创新应用与优势分析
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
SelectDB13 小时前
从 StarRocks 走向 Apache Doris:如何实现引擎平滑替换与架构升级?
大数据·数据库·数据分析
为思念酝酿的痛13 小时前
MySQL的操作
数据库·mysql
猫咪很可爱14 小时前
Oracle ORA-4031 错误分析与处理:SGA 内存不足导致 update/exp/expdp 失败
数据库·oracle