日期:2014-05-17  浏览次数:20739 次

杀死锁表的问题

oracle 10g

锁表

kill后锁表还存在,status字段为KILLED

查出os一级的进程后

  SPID OSUSER PROGRAM
1 268 zhi oracle@dca (TNS V1-V3)


在主机并没有找到查询到的spid,请问这个是什么原因,如何解决,释放这个锁表

------解决方案--------------------
你怎么查的谁有锁?
你用下面语句查一下,看看谁还锁着东西呢:
SELECT p.spid ,
 decode(locked_mode,0,'None',1,'Null',2,'Row share', 
3,'Row Exclusive',4,'Share',5,'Share Row Exclusive',6,'Exclusive') lock_type,
c.object_name ,
b.session_id ,
b.oracle_username,
b.os_user_name,
b.locked_mode, 
a.sid,
a.serial#,
a.machine,
a.action,
to_char(a.logon_time,'yyyy/mm/dd hh24:mi')
FROM v$process p,
v$session a ,
v$locked_object b,
all_objects c
WHERE p.addr =a.paddr
AND a.process =b.process
AND c.object_id=b.object_id