← Space Management
Oracle · Space Management

How to find the largest segments in Oracle

Find the largest segments (tables, indexes, LOBs) by size in Oracle from DBA_SEGMENTS.

Tested on11g12c19c21c23ai26ai

The biggest segments in the database, tables, indexes, and LOBs together, ranked by size. The top 30 is usually enough to explain where the space went.

SELECT * FROM (
  SELECT owner,
         segment_name,
         segment_type,
         tablespace_name,
         ROUND(bytes/1024/1024/1024, 2) AS gb
  FROM   dba_segments
  ORDER  BY bytes DESC
)
WHERE ROWNUM <= 30;
spacesegmentsdba_segments