Oracle 数据库查看锁表的语句和解锁的方法

一、查看锁表语句

javascript 复制代码
SELECT
	sess.sid,
	sess.serial#,
	lo.oracle_username, -- 登陆账号名称
	lo.os_user_name,    -- 登录电脑名称
	ao.object_name,     -- 被锁表名
	lo.locked_mode      -- 死锁级别
FROM
	v$locked_object lo,
	dba_objects ao,
	v$session sess 
WHERE
	ao.object_id = lo.object_id 
	AND lo.session_id = sess.sid;

死锁级别:

级别 描述
0 none
1 null 空
2 Row-S 行共享(RS):共享表锁
3 Row-X 行专用(RX):用于行的修改
4 Share 共享锁(S):阻止其他DML操作
5 S/Row-X 共享行专用(SRX):阻止其他事务操作
6 exclusive 专用(X):独立访问使用

二、解锁语句

javascript 复制代码
alter system kill session '68,51'; -- 分别为SID和SERIAL#号

三、查看引起锁表的Sql语句

javascript 复制代码
SELECT
	A.USERNAME,
	A.MACHINE,
	A.PROGRAM,
	A.SID,
	A.SERIAL#,
	A.STATUS,
	C.PIECE,
	C.SQL_TEXT 
FROM
	V$SESSION A,
	V$SQLTEXT C 
WHERE
	A.SID IN ( SELECT DISTINCT T2.SID FROM V$LOCKED_OBJECT T1, V$SESSION T2 WHERE T1.SESSION_ID = T2.SID ) 
	AND A.SQL_ADDRESS = C.ADDRESS ( + ) 
ORDER BY
	C.PIECE;
相关推荐
环流_1 小时前
Redis中string类型的应用场景
数据库·redis·缓存
倔强的石头_1 小时前
拒绝被复杂报表拖垮!HTAP场景下“标量子查询消除”硬核调优指南
数据库
环流_1 小时前
redis中list类型
数据库·redis·list
jiayong232 小时前
Tool Permission 与 Sandbox 的安全流水线:Agent 工具系统的工程边界
java·数据库·安全·agent
weixin_444012932 小时前
如何在MongoDB中实现按时间跨度的分片路由_时间序列范围分片与冷热节点架构
jvm·数据库·python
六月雨滴2 小时前
块(Block)管理
数据库·oracle·dba
东风破1372 小时前
DM存储过程及系统 表,系统视图,以及常规的运维SQL语句
运维·数据库·dm达梦数据库
CQU_JIAKE3 小时前
5.13【A】
数据库·sql
lzhdim3 小时前
SQL 入门 14:SQL 触发器与事件:自动化数据处理
linux·前端·数据库·sql·自动化
环流_3 小时前
redis中hash的应用场景
数据库·redis·哈希算法