Oracle SYSAUX Tablespace Size check

Um zu prüfen wie stark das Tablespaces SYSAUX von einer Database benutzt wird, gibt es eine SQL Abfrage, um ein Tablespace Size check durchzuführen.
Um diesen SELECT ausführen zu können, solltet ihr als sysdba arbeiten.

Befehl:

SELECT NVL(b.tablespace_name, NVL(a.tablespace_name,'UNKNOWN')) "Tablespace",
ROUND( kbytes_alloc, 2) "Allocated MB",
ROUND( kbytes_alloc-NVL(kbytes_free,0), 2) "Used MB",
ROUND( NVL(kbytes_free,0), 2) "Free MB",
ROUND( ((kbytes_alloc-NVL(kbytes_free,0))/kbytes_alloc), 2) "Used",
data_files "Data Files"
FROM
(SELECT SUM(bytes)/1024/1024 Kbytes_free,
MAX(bytes) /1024/1024 largest,
tablespace_name
FROM sys.dba_free_space
GROUP BY tablespace_name
) a,
(SELECT SUM(bytes)/1024/1024 Kbytes_alloc,
tablespace_name,
COUNT(*) data_files
FROM sys.dba_data_files
GROUP BY tablespace_name
)b
WHERE a.tablespace_name (+) = b.tablespace_name
AND b.tablespace_name = 'SYSAUX';

Ein Ergebnis könnte wie folgt aussehen:


Tablespace Allocated MB Used MB Free MB Used Data Files
------------------------------ ------------ ---------- ---------- ---------- ----------
SYSAUX 3024 1931,5 1092,5 ,64 2

Vorsicht: Die Werte von diesem Tablespace Size check sind mit round() ab bzw. aufgerundet!