起因:根据gv$session表中的sid杀掉会话后,资源一直不释放。
alter system kill session '12869,55697' immediate;
ERROR at line 1:
ORA-00031: session marked for kill
这时,再查看status状态的话,状态为kill
select * from gv$session where sid='012869';
status列的状态不是active也不是inactive,是KILLED,但是长时间不释放。
这时候可以将操作系统进程杀掉,释放资源会快很多。
根据sid查找进程号
SELECT s.inst_id, spid, osuser, s.program
FROM gv$session s, gv$process p
WHERE s.paddr=p.addr and s.sid=12869;
再查询出的进程号杀掉进程,注意是在哪个节点。