Block Change Tracking ile incremental yedeklerin hızlandırılması

30 Eyl by Ahmet Duruöz

Block Change Tracking ile incremental yedeklerin hızlandırılması

10G ile gelen özelliklerden biri olan  Block Change Tracking ile incremental yedeklerin çok daha kısa sürede bitmesini sağlayabilirsiniz. Bu özellik ile değişen blokların kayıtları tutulmaktadır. Bu sayede yedekleme sırasında hangi blok değişti diye kontrol etmeden yedek alınmaktadır. Bu da çok ciddi zaman kazanımı anlamına geliyor. 

Değişen blokların takibi Change Tracking Writer (CTWR) background prosesi ile yapılmaktadır. Block Change Tracking aktifleştirildiğinde CTWR prosesi de çalışmaya başlayacaktır.

Bir data bloğunda commit işlemi olduğunda , block değişim bilgisi , large pool içerisindeki CTWR buffer denilen alana kopyalanır. Checkpoint işleminde , CTWR prosesi , CTWR buffer alanındaki bilgileri BCT aktifleştirilirken belirttiğimiz  dosyaya  yani change tracking dosyasına yazar.

Deneyimlerime dayanarak söyleyebilirim ki ,11 saat süren bir yedekleme işlem süresi 50 dakikaya inebiliyor.

Bu özelliği kullanabilmek için aşağıdaki şekilde aktifleştirmek gerekiyor. Komuttaki “REUSE” , dosya daha önceden kullanıldıysa , yeniden kullanabilmemizi sağlıyor.

SQL> ALTER DATABASE ENABLE BLOCK CHANGE TRACKING USING FILE '+RECO/ORCL/block_change_tracking.dat' REUSE;

Database altered.

Mevcut durumu sorgulamak için aşağıdaki sorgu kullanılabilir .

SQL> SELECT status, filename FROM V$BLOCK_CHANGE_TRACKING;

STATUS
------------------------------
FILENAME
--------------------------------------------------------------------------------
ENABLED
+RECO/orcl/block_change_tracking.dat

Bu özelliği kapatmak için ise aşağıdaki komut yeterli olacaktır.

SQL> alter database disable block change tracking;

Database altered.	

 

Loading

Bir yanıt yazın

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