Datafile Resize İle ASM Disk Grublarında Yer Kazanımı

27 Nis by Ali Rıza Yılmaz

Datafile Resize İle ASM Disk Grublarında Yer Kazanımı

Veritabanlarında bulunan  datafile’lardaki kullanılmayan alanların ASM disk grubuna kazandırılarak tekrar kullanılması sağlanmalıdır. Bunun için kazanım sağlayabileceğimiz datafile’ları belirleyerek ilgili datafile’ların boyutunu küçültmemiz gerekmektedir.

Datafile’larda yer kazanımı sağlayabileceğimiz alanların tespitini aşağıdaki sorgu ile elde edebiliriz.

select * from
(select file_name,
       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,
       'alter database datafile ''' || file_name || ''' resize ' || ceil( (nvl(hwm,1)*&&blksize)/1024/1024 ) || 'M;' sql
from dba_data_files a,
     ( select file_id, max(block_id+blocks-1) hwm
         from dba_extents
        group by file_id ) b
where a.file_id = b.file_id(+)
)
where savings > 0
order by savings desc;

Sorgu içerisindeki &&blksize değişkenini veritabanınızın db_block_size parametresine göre ayarlamanız gerekmektedir.

Sorgu sonucu  savings kolonu kazanılacak alan miktarını göstermektedir.  sql kolonuda resize işlemi için gerekli sorguyu belirtmektedir.

 

 

Loading

2 Comments

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir