oracle杀死死锁的方法

WBOY
풀어 주다: 2016-06-07 15:14:09
원래의
1299명이 탐색했습니다.

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 oracle杀死死锁的方法 执行以下语句,查看死锁: 1 2 3 4 5 6 7 8 select /* + rule */ lpad( ' ' ,decode(l.xidusn,0,3,0))||l.oracle_username User_name, o.owner,o.object_name,o.object_type,s

欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入

  oracle杀死死锁的方法

  执行以下语句,查看死锁:

1

2

3

4

5

6

7

8

<font face="NSimsun">select</font> <font face="NSimsun">/* + rule */</font> lpad(' ',decode(l.xidusn,0,3,0))||l.oracle_username User_name,

<font face="NSimsun"> </font> 

<font face="NSimsun">o.owner,o.object_name,o.object_type,s.sid,s.serial#,p.spid </font>

<font face="NSimsun">from</font> <font face="NSimsun">v$locked_object l,dba_objects o,v$session s,v$process p  </font>

<font face="NSimsun">where</font> <font face="NSimsun">l.object_id=o.object_id </font>

<font face="NSimsun">and</font> <font face="NSimsun">l.session_id=s.sid </font>

<font face="NSimsun">and</font> <font face="NSimsun">s.paddr = p.addr  </font>

<font face="NSimsun">order</font> <font face="NSimsun">by</font> o.object_id,xidusn DESC;

  (执行这个语句的目的,是为了找到你需要杀死的死锁的SID和SERIAL#,注意:不建议你杀死别人的死锁,有可能别人在你查询死锁的时刻,正在做某些操作而锁表,刚好你正在查询死锁,其实你再查询的时候别人的锁已经解了。所以,无关自己的表的锁,不建议去杀死。)

  好了,找到你需要操作的表名,然后找到对应的SID和SERIAL#

  替换下面语句的变量,然后执行,即可解锁。

1

<font face="NSimsun">alter</font> system kill session 'sid,serial#';

  假如,你找到的SID和SERIAL#分别是:35,1980

  那么你应该执行的杀死死锁的语句如下:

1

<font face="NSimsun">alter</font> system kill session '35,1980';

  然后再执行第一个语句看看你的死锁被杀死了没有?

  肯定会成功的!

oracle杀死死锁的方法

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!