Sessões bloqueadoras e bloqueadas no Oracle

[ad#texto]

Muitas vezes precisamos descobrir qual é a sessão bloqueadora e também qual é a sessão bloqueada no Oracle, isso é bem simples, veja o exemplo abaixo:

select 'SID ' || l1.sid ||' está bloqueando ' || l2.sid blocking
from v$lock l1, v$lock l2
where l1.block =1 and l2.request > 0
  and l1.id1=l2.id1
  and l1.id2=l2.id2;

Ainda é possível extrair mais informações acerca de bloqueios e as sessões no Oracle com a query abaixo:

select substr(to_char(c.LOCKWAIT),1,8) lockwait
,substr(to_char(b.session_id)||','||to_char(c.serial#),1,12) sid_serial#
  ,c.status
  ,rpad(c.osuser,8) unix
  ,rpad(c.username,8) ora
  ,to_char(c.logon_time,'dd/mm hh24:mi:ss') logon_time
  ,a.object_name Tabela
  ,decode(b.locked_mode,1,'No Lock',
    2,'Row Share',
    3,'Row Exclusive',
    4,'Share',
    5,'Share Row Excl',
    6,'Exclusive',null) Status_Lock
  ,rpad(c.module,15) Prog
  ,c.terminal terminal
  ,rpad(c.action,20) acao
from all_objects a
  ,v$locked_object b
  ,v$session c
where b.object_id = a.object_id
  and b.session_id = c.sid
order by 6, 7 desc

Petter Rafael

Desenvolvedor Web atua com as tecnologias Java e PHP apoiadas pelos bancos de dados Oracle e MySQL. Além dos ambientes de desenvolvimento acima possuiu amplo conhecimento em servidores Apache/Tomcat, Photoshop, Arte & Foto, Flash e mais uma dezena de ferramentas e tecnologias emergentes. Atualmente colabora com o Viablog escrevendo sobre programação e tecnologia.
ViamaisBLOG
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.