Find the top 10 CPU Consuming Processes in Oracle

Check top 10 CPU Consuming process in Oracle

SELECT *
FROM (
    SELECT s.sid,
           s.serial#,
           s.username,
           s.program,
           s.sql_id,
           st.value AS cpu_usage
    FROM v$session s
    JOIN v$sesstat st ON s.sid = st.sid
    JOIN v$statname sn ON st.statistic# = sn.statistic#
    WHERE sn.name = 'CPU used by this session'
      AND s.username IS NOT NULL
    ORDER BY st.value DESC
)
WHERE ROWNUM <= 10;

Check the current session or the top 10 SQL queries using the most CPU in Oracle.

SELECT *
FROM (
    SELECT s.sid,
           s.serial#,
           s.username,
           s.status,
           s.sql_id,
           s.program,
           s.last_call_et AS seconds_running,
           q.sql_text
    FROM v$session s
    JOIN v$sql q ON s.sql_id = q.sql_id
    WHERE s.status = 'ACTIVE'
      AND s.username IS NOT NULL
      AND s.sql_id IS NOT NULL
    ORDER BY s.last_call_et DESC
)
WHERE ROWNUM <= 10;
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.

Leave a Reply