Check blocking session history in Oracle

Check historical blocking session in Oracle

Check the last 24 hours blocking history of session in Oracle

SELECT DISTINCT a.sql_id,
a.inst_id,
a.blocking_session blocker_ses,
a.blocking_session_serial# blocker_ser,
a.user_id,
s.sql_text,
a.module,
a.sample_time
FROM GV$ACTIVE_SESSION_HISTORY a, gv$sql s
WHERE a.sql_id = s.sql_id
AND blocking_session IS NOT NULL
AND a.user_id <> 0 -- exclude SYS user
AND a.sample_time >= SYSDATE - 1;

Check total blocking history of session in Oracle

SELECT DISTINCT a.sql_id,
a.inst_id,
a.blocking_session blocker_ses,
a.blocking_session_serial# blocker_ser,
a.user_id,
s.sql_text,
a.module,
a.sample_time
FROM GV$ACTIVE_SESSION_HISTORY a, gv$sql s
WHERE a.sql_id = s.sql_id
AND blocking_session IS NOT NULL
AND a.user_id <> 0 -- exclude SYS user

Fetch for particular user blocking history in Oracle

SELECT DISTINCT a.sql_id,
a.inst_id,
a.blocking_session blocker_ses,
a.blocking_session_serial# blocker_ser,
a.user_id,
s.sql_text,
a.module,
a.sample_time
FROM GV$ACTIVE_SESSION_HISTORY a, gv$sql s
WHERE a.sql_id = s.sql_id
AND blocking_session IS NOT NULL
AND a.user_id in (select user_id from dba_users where username = 'SCOTT');

This entry was posted in Oracle on by .
Unknown's avatar

About SandeepSingh

Hi, I am working in IT industry with having more than 15 year of experience, worked as an Oracle DBA with a Company and handling different databases like Oracle, SQL Server , DB2 etc Worked as a Development and Database Administrator.

2 thoughts on “Check blocking session history in Oracle

  1. Unknown's avatarAnonymous

    SELECT DISTINCT a.sql_id,
    a.inst_id,
    a.blocking_session blocker_ses,
    a.blocking_session_serial# blocker_ser,
    a.user_id,
    s.sql_text,
    a.module,
    a.sample_time
    FROM GV$ACTIVE_SESSION_HISTORY a, gv$sql s
    WHERE a.sql_id = s.sql_id
    AND blocking_session IS NOT NULL
    AND a.user_id 0 — exclude SYS user
    AND a.sample_time
    between
    to_date(’10-OCT-2023 22:40:00′,’DD-MON-YYYY HH24:MI:SS’)
    and
    to_date(’10-OCT-2023 23:10:10′,’DD-MON-YYYY HH24:MI:SS’);

    Reply

Leave a Reply