Oracle Datafile Free Space Report
This script displays free space information for Oracle datafiles. It combines data from DBA_DATA_FILES and DBA_FREE_SPACE to show file size, maximum size, free space, potential growth, and percentage used, helping DBAs monitor storage utilization and capacity.
oraclesqlstorage-tablespacesv1.0.0
0 stars0 downloads17 views0 comments
By OracleDba • Created
Code
(30 lines)123456789101112131415161718192021222324252627282930
-- -----------------------------------------------------------------------------------
-- File Name : https://oracle-base.com/dba/monitoring/df_free_space.sql
-- Author : Tim Hall
-- Description : Displays free space information about datafiles.
-- Requirements : Access to the V$ views.
-- Call Syntax : @df_free_space.sql
-- Last Modified: 17-AUG-2005
-- -----------------------------------------------------------------------------------
SET LINESIZE 120
COLUMN file_name FORMAT A60
SELECT a.file_name,
ROUND(a.bytes/1024/1024) AS size_mb,
ROUND(a.maxbytes/1024/1024) AS maxsize_mb,
ROUND(b.free_bytes/1024/1024) AS free_mb,
ROUND((a.maxbytes-a.bytes)/1024/1024) AS growth_mb,
100 - ROUND(((b.free_bytes+a.growth)/a.maxbytes) * 100) AS pct_used
FROM (SELECT file_name,
file_id,
bytes,
GREATEST(bytes,maxbytes) AS maxbytes,
GREATEST(bytes,maxbytes)-bytes AS growth
FROM dba_data_files) a,
(SELeCT file_id,
SUM(bytes) AS free_bytes
FROM dba_free_space
GROUP BY file_id) b
WHERE a.file_id = b.file_id
ORDER BY file_name;