oracle查看锁表的sql
以下是Oracle查看锁表的SQL语句:
SELECT
a.session_id,
a.oracle_username,
a.os_user_name,
b.object_name,
b.object_type,
a.locked_mode,
a.blocking_session,
a.seconds_in_wait
FROM
v$locked_object a,
dba_objects b
WHERE
a.object_id = b.object_id;
该SQL语句将返回当前被锁定的对象、锁定模式、持有锁的会话ID、持有锁的Oracle用户名、持有锁的操作系统用户名、阻塞会话ID和等待时间(以秒为单位)。
此外,还可以使用以下SQL语句查看当前所有的锁定会话:
SELECT
s.sid,
s.serial#,
s.username,
s.osuser,
l.type,
l.mode_held,
l.mode_requested,
o.object_name,
o.object_type
FROM
v$session s,
v$lock l,
dba_objects o
WHERE
s.sid = l.sid
AND l.id1 = o.object_id;
该SQL语句将返回当前所有的锁定会话,包括会话ID、序列号、用户名、操作系统用户名、锁定类型、持有锁的模式、请求锁的模式、锁定的对象名称和类型。