Si por un casual, tenemos una sesión pillada y desde nuestro software cliente favorito le damos a kill sesion y está se queda en modo killed y no sale de ese estado. Puede tratarse de un problema de liberación de sesión por parte de Oracle, bien porque tiene un cliente que llama al proceso y éste cliente está colgado y desconectado de Oracle o similar.
Para este tipo de situaciones podemos recurrir a la utilidad ORAKILL.
El ORAKILL utiliza el SPID para matar una sesión. Para obtener el SPID de la sesión bloqueada tenemos que utilizar la siguiente query:
SELECT s.inst_id,
s.sid,
s.serial#,
--s.sql_id,
p.spid,
s.username,
s.program
FROM gv$session s
JOIN
gv$process p ON p.addr = s.paddr AND p.inst_id = s.inst_id
WHERE s.type !=
'BACKGROUND';
Apuntamos el spid de nuestro SID. En este ejemplo es el 8748.
Desde una consola, ejecutamos
Orakill nombredelainstancia SPID
C:\orakill ORCL 8748
Sesión en estado killed eliminada.
Espero que les resulte útil.
Salu2.
0 comentarios:
Publicar un comentario