2026-03-12 20:23:15
This commit is contained in:
78
vg/sga_top_objects.sql
Normal file
78
vg/sga_top_objects.sql
Normal file
@@ -0,0 +1,78 @@
|
||||
@@header
|
||||
|
||||
|
||||
|
||||
/************************************
|
||||
* INPUT PARAMETERS
|
||||
************************************/
|
||||
UNDEFINE owner
|
||||
UNDEFINE object_name
|
||||
UNDEFINE subobject_name
|
||||
|
||||
DEFINE owner="&&1"
|
||||
DEFINE object_name="&&2"
|
||||
DEFINE subobject_name="&&3"
|
||||
|
||||
|
||||
COLUMN _owner NEW_VALUE owner NOPRINT
|
||||
COLUMN _object_name NEW_VALUE object_name NOPRINT
|
||||
COLUMN _subobject_name NEW_VALUE subobject_name NOPRINT
|
||||
|
||||
set term off
|
||||
|
||||
SELECT DECODE(UPPER('&&owner'),'','%','&&owner') "_owner"
|
||||
, DECODE(UPPER('&&object_name'),'','%','&&object_name') "_object_name"
|
||||
, DECODE(UPPER('&&subobject_name'),'','%','&&subobject_name') "_subobject_name"
|
||||
FROM DUAL;
|
||||
|
||||
SELECT CASE
|
||||
WHEN INSTR('&&owner','.') != 0 THEN SUBSTR(UPPER('&&owner'),1,INSTR('&&owner','.')-1)
|
||||
ELSE DECODE(UPPER('&&owner'),'','%',UPPER('&&owner'))
|
||||
END "_owner"
|
||||
, CASE
|
||||
WHEN INSTR('&&owner','.') != 0 THEN SUBSTR(UPPER('&&owner'),INSTR('&&owner','.')+1)
|
||||
ELSE DECODE(UPPER('&&object_name'),'','%',UPPER('&&object_name'))
|
||||
END "_object_name"
|
||||
FROM DUAL;
|
||||
set term on
|
||||
|
||||
|
||||
PROMPT *****************************************************************
|
||||
PROMPT * S G A O B J E C T S L I S T
|
||||
PROMPT *
|
||||
PROMPT * Input Parameters
|
||||
PROMPT * - Owner = '&&owner'
|
||||
PROMPT * - Object Name = '&&object_name'
|
||||
PROMPT * - SubObject Name = '&&subobject_name'
|
||||
PROMPT *****************************************************************
|
||||
|
||||
set lines 1000
|
||||
set numf 999,999,999,999
|
||||
set pages 80
|
||||
|
||||
|
||||
COLUMN owner FORMAT a20
|
||||
COLUMN object_name FORMAT a70
|
||||
COLUMN subobject_name FORMAT a30
|
||||
|
||||
BREAK ON REPORT
|
||||
COMPUTE SUM LABEL 'Total' OF "Total (Bytes)" FORMAT 99,999,999,999 ON REPORT
|
||||
|
||||
|
||||
SELECT /*+ choose */ o.OWNER || '.' || o.object_name || NVL2(o.subobject_name,':' || o.subobject_name,'') object_name
|
||||
, SUM(DECODE(bitand(flag,1),1,0,a.blksize)) "Not Dirty (Bytes)"
|
||||
, SUM(DECODE(bitand(flag,1),1,a.blksize,0)) "Dirty (Bytes)"
|
||||
, SUM(dirty_queue* a.blksize) "On Dirty (Bytes)"
|
||||
, SUM(a.blksize) "Total (Bytes)"
|
||||
FROM x$bh x
|
||||
, DBA_OBJECTS o
|
||||
, (SELECT VALUE blksize FROM v$system_parameter WHERE NAME = 'db_block_size') a
|
||||
WHERE x.obj = o.OBJECT_ID
|
||||
AND o.owner like '&&owner' ESCAPE '\'
|
||||
AND o.object_name like '&&object_name' ESCAPE '\'
|
||||
AND NVL(o.subobject_name,'%') like '&&subobject_name' ESCAPE '\'
|
||||
GROUP BY o.OWNER, o.object_name, o.subobject_name
|
||||
ORDER BY SUM(a.blksize) asc
|
||||
/
|
||||
|
||||
@@footer
|
||||
Reference in New Issue
Block a user