Index Maintenance

From Tom's notes
Jump to navigation Jump to search

Size of all indexes:

with idx as (
select *
  from dba_indexes
 where index_type = 'NORMAL')
, seg as (
select owner, segment_name, sum(bytes) bytes
  from dba_segments
 group by owner, segment_name)
select idx.index_name, idx.segment_created, round(seg.bytes / 1024 / 1024) MB
  from idx
     , seg
 where seg.owner(+) = idx.owner
   and seg.segment_name(+) = idx.index_name
   and seg.bytes is not null
 order by seg.bytes;