我爱电脑技术论坛's Archiver

白雪公主 发表于 2008-6-24 08:38

讲解杀死Oracle数据库死锁进程的具体方法

杀死"Oracle"死锁进程的具体步骤:


1.查哪个过程被锁


查V$DB_OBJECT_CACHE视图:



SELECT * FROM V$DB_OBJECT_CACHE

WHERE OWNER='过程的所属用户' AND CLOCKS!='0';






2. 查是哪一个SID,通过SID可知道是哪个SESSION.


查V$ACCESS视图:



SELECT * FROM V$ACCESS WHERE

OWNER='过程的所属用户' AND NAME='刚才查到的过程名';




3. 查出SID和SERIAL#


查V$SESSION视图:



SELECT SID,SERIAL#,PADDR FROM

V$SESSION WHERE SID='刚才查到的SID'






查V$PROCESS视图:



SELECT SPID FROM V$PROCESS

WHERE ADDR='刚才查到的PADDR';





4. 杀进程


(1).先杀Oracle进程:



ALTER SYSTEM KILL SESSION '查出的SID,查出的SERIAL#';




(2).再杀操作系统进程:


KILL -9 刚才查出的SPID





ORAKILL 刚才查出的SID 刚才查出的SPID。

页: [1]
 

Powered by Discuz! Archiver 7.0.0  © 2001-2009 Comsenz Inc.