cpu를 과도하게 점유하는 쿼리 정보 알려면
작성자 관리자 작성시간 2007-07-09 10:43:43
 

먼저 top으로 과도 점유 프로세스 확인

① CPU를 과도하게 사용하는 프로세스의 SESSION ID 번호, SERIAL 번호 확인
% sqlplus ‘/as sysdba’
SQL> select a.sid, a.serial#
from v$session a, v$process b
where a.paddr= b.addr and b.spid= 'SPID';
※ SID : Session ID

② 해당 세션에 대한 쿼리 확인
SQL> select a.sql_text
from v$sqltext a, v$session b
where a.address=b.sql_address and a.hash_value=b.sql_hash_value
and b.sid= ‘SID_NUMBER’
order by a.piece;

③ 해당 세션 종료
SQL> alter system kill session ‘Session ID, Serial#’;
Cf) 사용자 TERMINAL로 프로세스 확인
SELECT ALL SYS.V_$SESSION.OSUSER, SYS.V_$SESSION.USERNAME,
SYS.V_$SESSION.TERMINAL, SYS.V_$SESSION.PROGRAM,
SYS.V_$PROCESS.SPID SERVER_PID
FROM SYS.V_$PROCESS, SYS.V_$SESSION
WHERE SYS.V_$PROCESS.ADDR=SYS.V_$SESSION.PADDR
and SYS.V_$SESSION.TERMINAL = ‘TERMINAL’;


목록 | 입력 | 수정 | 답변 | 삭제