반응형
이상한 SQL 등 장시간 사용하고 있는 쿼리를 Oracle환경에서 확인이 필요한 경우,
활성화된 세션을 기준으로 실행된 시간을 체크하는 SQL
SELECT
s.sid,
s.serial#,
s.username,
s.status,
s.machine,
s.program,
s.module,
s.event,
s.sql_id,
q.sql_text,
ROUND(s.last_call_et / 60, 1) AS "run(Min)",
s.logon_time
FROM
v$session s
JOIN v$process p ON s.paddr = p.addr
LEFT JOIN v$sql q ON s.sql_id = q.sql_id
WHERE
s.username IS NOT NULL
AND s.status = 'ACTIVE'
ORDER BY
s.last_call_et DESC;
* v$session.last_call_et = 세션이 마지막으로 호출(실행)된 이후 경과한 시간 (초)
# 세션 상태 별 last_call_et 의미
* ACTIVE: 현재 실행 중인 SQL의 실행 시간 (초)
* INACTIVE SQL 실행이 끝난 후 대기 중인 시간 (초)
ex)
ACTIVE이고 last_call_et = 120: 현재 SQL이 2분 동안 실행 중
INACTIVE이고 last_call_et = 3600: SQL 실행 후 1시간 동안 아무것도 안 하고 있는 세션
반응형
'Dev > DataBase' 카테고리의 다른 글
MaxScale - Filter (0) | 2024.10.25 |
---|---|
maxscale.cnf 설정 속성 (0) | 2024.10.25 |
MariaDB my.cnf 설정 파일 (0) | 2024.05.24 |
MHA vs MaxScale 장단점 비교 (0) | 2024.05.06 |
MariaDB 간략한 정리 (0) | 2024.01.18 |