DBAtlas · Atlas für Datenbankbetrieb

Abfrage des freien Platzes im Tablespace

OracleSpeicher

Befehl

SELECT df.tablespace_name,
       ROUND(df.total_mb/1024,2)                 AS total_gb,
       ROUND(NVL(fs.free_mb,0)/1024,2)           AS free_gb,
       ROUND((df.total_mb-NVL(fs.free_mb,0))/df.total_mb*100,1) AS pct_used
FROM  (SELECT tablespace_name, SUM(bytes)/1024/1024 total_mb
         FROM dba_data_files GROUP BY tablespace_name) df
  LEFT JOIN
       (SELECT tablespace_name, SUM(bytes)/1024/1024 free_mb
          FROM dba_free_space GROUP BY tablespace_name) fs
    ON df.tablespace_name = fs.tablespace_name
ORDER BY pct_used DESC;

Was es tut

Zeigt den gesamten und freien Platz sowie den Nutzungsanteil jedes Tablespace (auf Basis des aktuell zugewiesenen Platzes, ohne Autoextend-Potenzial).

Wann einsetzen

Platzüberwachung, Ermitteln, welcher Tablespace erweitert werden muss.

Vorsicht

Diese Abfrage basiert auf der aktuellen Datafile-Größe; mit Autoextend kann sie weiter wachsen. Für Temp DBA_TEMP_FREE_SPACE verwenden. Nur Abfrage; kein Risiko.

In DBAtlas öffnen →

Verwandte Einträge