SET LINES 200
COL pdb_name FORMAT A20
SELECT
p.name AS pdb_name,
ROUND(SUM(s.value)/100,2) AS cpu_seconds,
COUNT(*) AS sessions
FROM
v$sesstat s,
v$statname n,
v$session se,
v$pdbs p
WHERE
s.statistic# = n.statistic#
AND s.sid = se.sid
AND n.name = 'CPU used by this session'
AND se.con_id = p.con_id
GROUP BY p.name
ORDER BY cpu_seconds DESC;
==============or================
SET LINES 200
COL pdb_name FORMAT A15
COL username FORMAT A15
COL program FORMAT A30
COL service FORMAT A20
COL cpu_mins FORMAT 99990.99
SELECT
ROWNUM AS rank,
x.*
FROM
(
SELECT
p.name AS pdb_name,
s.sid,
s.serial#,
s.username,
s.service_name AS service,
s.program,
s.sql_id,
ROUND(v.value / (100*60), 2) AS cpu_mins
FROM
v$statname n,
v$sesstat v,
v$session s,
v$pdbs p
WHERE
n.name = 'CPU used by this session'
AND v.statistic# = n.statistic#
AND v.sid = s.sid
AND s.con_id = p.con_id
AND v.value > 0
ORDER BY v.value DESC
) x
WHERE ROWNUM <= 10;
COL pdb_name FORMAT A15
COL username FORMAT A15
COL program FORMAT A30
COL service FORMAT A20
COL cpu_mins FORMAT 99990.99
SELECT
ROWNUM AS rank,
x.*
FROM
(
SELECT
p.name AS pdb_name,
s.sid,
s.serial#,
s.username,
s.service_name AS service,
s.program,
s.sql_id,
ROUND(v.value / (100*60), 2) AS cpu_mins
FROM
v$statname n,
v$sesstat v,
v$session s,
v$pdbs p
WHERE
n.name = 'CPU used by this session'
AND v.statistic# = n.statistic#
AND v.sid = s.sid
AND s.con_id = p.con_id
AND v.value > 0
ORDER BY v.value DESC
) x
WHERE ROWNUM <= 10;
No comments:
Post a Comment