之前總結過一篇博客“ORA-14450: attempt to access a transactional temp table already in use”,里面的腳本僅適合于講述如何解決ORA-14450錯誤,在生產環境中,肯定需要快速解決問題,你可以使用下面腳本kill_session_ora_14450.sql找出涉及臨時表的會話,并生成kill session的腳本,
SET LINESIZE 1080; SET COL KILL_SESSION FOR A80;
SELECT s.SID, s.SERIAL#,
s.STATUS,
s.PADDR,
'ALTER SYSTEM KILL SESSION '''
|| s.SID
|| ',' || s.SERIAL#
|| ''' IMMEDIATE;' AS kill_cmd_text
FROM V$SESSION s
WHERE s.SID IN (SELECT SID
FROM V$ENQUEUE_LOCK T WHERE T.TYPE = 'TO')
AND s.SID IN(SELECT SID
FROM V$LOCK WHERE ID1 IN (SELECT OBJECT_ID
FROM DBA_OBJECTS WHERE OBJECT_NAME = UPPER('&TABLE_NAME')
AND OBJECT_TYPE = 'TABLE'));
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/249418.html
標籤:其他
上一篇:Redis-第二章節-簡介
