oracle 表死锁
一般数据库中存储过程无法编辑,包无法编辑,导致的原因基本都是因为表的死锁,简述检查过程及解决办法。
1、检查是否有表死锁
SELECT s.username,
decode(l.type, 'TM', 'TABLE LOCK', 'TX', 'ROW LOCK', NULL) LOCK_LEVEL,
o.owner,
o.object_name,
o.object_type,
s.sid,
s.serial#
FROM v$session s, v$lock l, dba_objects o
WHERE l.sid = s.sid
AND l.id1 = o.object_id(+)
AND s.username is NOT NULL
AND O.OWNER='DB_USER_NAME' ; --用户名,大写
2、停止任务回话
alter system kill session '817,49'; -- 817 49 是上图检查结果
3、job问题造成
在网络看到job有也有可能导致表死锁,摘录如下:
1.查看正在运行的job: