Do not try to shrink SYSTEM, SYSAUX tablespace datafiles, As it contains
database related datas.
Query To check maximum freeable space in datafiles
---------------------------------------------------
SELECT substr(FILE_NAME,1,55),
CEIL( (NVL(HWM,1)*&&BLKSIZE)/1024/1024 ) SMALLEST,
CEIL( BLOCKS*&&BLKSIZE/1024/1024) CURRSIZE,
CEIL( BLOCKS*&&BLKSIZE/1024/1024) - CEIL( (NVL(HWM,1)*&&BLKSIZE)/1024/1024 )
SAVINGS
FROM DBA_DATA_FILES DBADF, ( SELECT FILE_ID, MAX(BLOCK_ID+BLOCKS-1) HWM FROM
DBA_EXTENTS GROUP BY FILE_ID ) DBAFS
WHERE DBADF.FILE_ID = DBAFS.FILE_ID(+) Order by SAVINGS
O/P
--
SUBSTR(FILE_NAME,1,55) SMALLEST CURRSIZE SAVINGS
/data/PROD/a_txn_data140.dbf 8158 10240 2082
/data/PROD/a_archive02.dbf 1885 4000 2115
/data/PROD/a_media03.dbf 5191 8192 3001
/data/PROD/a_txn_data141.dbf 6828 10240 3412
/data/PROD/a_txn_data142.dbf 6817 10240 3423
/data/PROD/a_queue03.dbf 417 4500 4083
The column smallest specifies the maximum minimum size of the datafile can be
set saving the size specified in savings column.
To shrink the datafile size and to free up space
------------------------------------------------
alter database datafile '/data/PROD/a_txn_data142.dbf' resize 7000m;
Do the same for the remaining datafiles.

Steps to Shrink Datafiles

  • 1.
    Do not tryto shrink SYSTEM, SYSAUX tablespace datafiles, As it contains database related datas. Query To check maximum freeable space in datafiles --------------------------------------------------- SELECT substr(FILE_NAME,1,55), CEIL( (NVL(HWM,1)*&&BLKSIZE)/1024/1024 ) SMALLEST, CEIL( BLOCKS*&&BLKSIZE/1024/1024) CURRSIZE, CEIL( BLOCKS*&&BLKSIZE/1024/1024) - CEIL( (NVL(HWM,1)*&&BLKSIZE)/1024/1024 ) SAVINGS FROM DBA_DATA_FILES DBADF, ( SELECT FILE_ID, MAX(BLOCK_ID+BLOCKS-1) HWM FROM DBA_EXTENTS GROUP BY FILE_ID ) DBAFS WHERE DBADF.FILE_ID = DBAFS.FILE_ID(+) Order by SAVINGS O/P -- SUBSTR(FILE_NAME,1,55) SMALLEST CURRSIZE SAVINGS /data/PROD/a_txn_data140.dbf 8158 10240 2082 /data/PROD/a_archive02.dbf 1885 4000 2115 /data/PROD/a_media03.dbf 5191 8192 3001 /data/PROD/a_txn_data141.dbf 6828 10240 3412 /data/PROD/a_txn_data142.dbf 6817 10240 3423 /data/PROD/a_queue03.dbf 417 4500 4083 The column smallest specifies the maximum minimum size of the datafile can be set saving the size specified in savings column. To shrink the datafile size and to free up space ------------------------------------------------ alter database datafile '/data/PROD/a_txn_data142.dbf' resize 7000m; Do the same for the remaining datafiles.