SELECT
a.sid, -- SID
a.serial#, -- 시리얼번호
a.status, -- 상태정보
a.process, -- 프로세스정보
a.username, -- 유저
a.osuser, -- 접속자의 OS 사용자 정보
b.sql_text, -- sql
c.program -- 접속 프로그램
FROM
v$session a,
v$sqlarea b,
v$process c
WHERE
a.sql_hash_value=b.hash_value
AND a.sql_address=b.address
AND a.paddr=c.addr
AND a.status='ACTIVE';
--유저 세션 KILL
ALTER SYSTEM KILL SESSION 'SID,시리얼번호';
현재 실행중인 SQL 쿼리 확인1
set line 200
col sid format a10
col machine format a20
SELECT TO_CHAR (SID) sid, serial# serialNumber,
SUBSTR (TO_CHAR (last_call_et), 1, 6) executeSeconds, userName, machine,
b.sql_text sqlText
FROM v$session a, v$sqltext b
WHERE username NOT IN ('SYSTEM', 'SYS')
AND a.TYPE != 'BACKGROUND'
AND a.status = 'ACTIVE'
AND a.sql_address = b.address(+)
AND a.sql_hash_value = b.hash_value(+)
ORDER BY a.last_call_et DESC,
a.SID,
a.serial#,
b.address,
b.hash_value,
b.piece;
현재 실행중인 SQL 쿼리 확인2
col TERMINAL for a10
col USERNAME for a10
col OSUSER for a10
col PROGRAM for a25
col SQL_TEXT for a65
SELECT ALL SYS.V_$SESSION.OSUSER, SYS.V_$SESSION.USERNAME,
SYS.V_$SESSION.TERMINAL, SYS.V_$SESSION.PROGRAM,
SYS.V_$PROCESS.SPID SERVER_PID,
SYS.V_$SQLAREA.SQL_TEXT
FROM SYS.V_$PROCESS, SYS.V_$SESSION, SYS.V_$SQLAREA
WHERE SYS.V_$PROCESS.ADDR=SYS.V_$SESSION.PADDR and SYS.V_$SQLAREA.ADDRESS=SYS.V_$SESSION.SQL_ADDRESS
AND SYS.V_$SQLAREA.HASH_VALUE=SYS.V_$SESSION.SQL_HASH_VALUE;
===sql 처리 시간확인
SELECT A.MESSAGE , A.START_TIME , A.LAST_UPDATE_TIME , A.TIME_REMAINING , ROUND((SOFAR/TOTALWORK)*100,0)||'%' AS PROGESS , B.SQL_TEXT FROM V$SESSION_LONGOPS A , V$SQL B WHERE A.SQL_ADDRESS=B.ADDRESS AND ROWNUM<=10 AND A.TIME_REMAINING>0 ;