oracle 如何用pl/sql解锁

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lang_niu/article/details/84640809

--oracle中查看表是否被锁 查看表是否被锁
SELECT /*+ rule*/
a.sid, b.owner, object_name, object_type
FROM v$lock a, all_objects b
WHERE TYPE = 'TM'
and a.id1 = b.object_id;
--这样可以把它杀掉
SELECT sid,serial# FROM v$session WHERE sid =1027;
alter system kill session '1027,14272';

SELECT /*+ rule*/ 
  a.sid, b.owner, object_name, object_type 
  FROM v$lock a, all_objects b 
  WHERE TYPE = 'TM' 
  and a.id1 = b.object_id; 
  
  sELECT sid,serial# FROM v$session WHERE sid =695; 
  
  alter system kill session '695,32099';

SELECT S.SID, S.MACHINE, O.OBJECT_NAME, L.ORACLE_USERNAME, L.LOCKED_MODE, S.OSUSESR, 'ALTER SYSTEM KILL SESSION '''|| S.SID || ', '|| S.SERIAL#||''';' AS KILL_COMMAND FROM V$LOCKED_OBJECT L, V$SESSION S, ALL_OBJECTS O WHERE L.SESSION_ID=S.SID AND L.OBJECT_ID=O.OBJECT_ID

SELECT l.session_id sid, s.serial#, l.locked_mode,l.oracle_username,
l.os_user_name,s.machine, s.terminal, o.object_name, s.logon_time
FROM v$locked_object l, all_objects o, v$session s
WHERE l.object_id = o.object_id
AND l.session_id = s.sid
ORDER BY sid, s.serial# ;


alter system kill session '695'; 


SELECT A.OWNER 方案名, 
       A.OBJECT_NAME 表名, 
       B.XIDUSN 回滚段号, 
       B.XIDSLOT 槽号, 
       B.XIDSQN 序列号, 
       B.SESSION_ID 锁表SESSION_ID, 
       B.ORACLE_USERNAME 锁表用户名, 
       decode(D.type, 
              'XR', 
              'NULL', 
              'RS', 
              'SS(Row-S)', 
              'CF', 
              'SS(Row-S)', 
              'TM', 
              'TABLE LOCK', 
              'PW', 
              'TABLE LOCK', 
              'TO', 
              'TABLE LOCK', 
              'TS', 
              'TABLE LOCK', 
              'RT', 
              'ROW LOCK', 
              'TX', 
              'ROW LOCK', 
              'MR', 
              'S(Share)', 
              NULL) 锁定方式, 
       
       C.MACHINE 用户组, 
       C.TERMINAL 机器名, 
       B.OS_USER_NAME 系统用户名, 
       B.PROCESS 系统进程id, 
       DECODE(C.STATUS, 'INACTIVE', '不活动', 'ACTIVE', '活动') 活动情况, 
       C.SERVER, 
       C.SID, 
       C.SERIAL#, 
       C.PROGRAM 连接方式, 
       C.LOGON_TIME 
  FROM ALL_OBJECTS A, V$LOCKED_OBJECT B, SYS.GV_$SESSION C, v$lock d 
WHERE (A.OBJECT_ID = B.OBJECT_ID) 
   AND (B.PROCESS = C.PROCESS) 
   and C.sid = d.sid 
   and B.LOCKED_MODE = D.LMODE 
ORDER BY 1, 2; 

猜你喜欢

转载自blog.csdn.net/lang_niu/article/details/84640809