Flashback Database

1 Eyl by Ahmet Duruöz

Flashback Database

Flashback database özelliği sayesinde saatler süren restore-recover sürecini birkaç dakikaya indirebilirsiniz. Veritabanınızı belirli bir zamana geri çekip açabilirsiniz. Flashback database  özelliği fiziksel problemlerde değil kullanıcı hatalarının geri getirilmesinde (truncate table v.s.) kullanmak daha doğrudur.

Flashback database özelliği varsayılan olarak kapalıdır.Bu özelliği açmak için FLASHBACK_ON özelliğini  ayarlamak gereklidir. Ayrıca DB_FLASHBACK_RETENTION_TARGET parametresi ile de dakika cinsinden geriye alınabilecek süreyi belirtmek gereklidir. DB_FLASHBACK_RETENTION_TARGET parametresinin varsayılan değeri 1440 dakika (bir gün) şeklindedir. Bunlardan önce veri tabanınız için Flashback Recovery Area yı etklinleştirmelisiniz.

Flashback Recovery Area için DB_RECOVERY_FILE_DEST ve DB_RECOVERY_FILE_DEST_SIZE parametreleriniz ayarlamanız gereklidir.

Veritabanınızın flashback durumunu :

SQL>select flashback_on from v$database;

sorgusu ile görebilirsiniz.

Flashback_on için üç farklı durum vardır.
yes : Flashback database özelliği çalışıyor.
no : Flashback database özelliği kapalı
restore point only : Yalnızca flashback garantili restore pointler için özelliğin aktif olmasıdır.

*Özelliğin çalışabilmesi açısından bir diğer önemli nokta veritabanı archivelog modda çalışıyor olmalıdır. Aşağıdaki komut ile veri tabanınızın arşiv modunu görebilirsiniz.

SQL> ARCHIVE LOG LIST
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     11
Next log sequence to archive   13
Current log sequence           13

 


Flashback Database özelliğini etkinleştirmek için gerekli adımlar :

10g için :

SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER SYSTEM SET DB_FLASHBACK_RETENTION_TARGET=4320 SCOPE=BOTH; # 3 gün
SQL> ALTER DATABASE FLASHBACK ON;
SQL> ALTER DATABASE OPEN;

 

11g için:

SQL> ALTER SYSTEM SET DB_FLASHBACK_RETENTION_TARGET=4320 SCOPE=BOTH; # 3 gün
SQL> ALTER DATABASE FLASHBACK ON;

 

Flashback database ile geriye alma işlemlerini 3 şekilde yapabiliriz.
1) SCN
2) RESTORE POINT
3) TARIH

Veritabanınızın şuanki SCN bilgisine ;

SQL>select current_scn from v$database;

 

sorgusundan erişebilirsiniz.

RESTORE POINT YARATMAK:

SQL > CREATE RESTORE POINT MY_RP;

 

Oluşturulmuş restore point bilgilerine erişmek için

SQL >  SELECT * FROM V$RESTORE_POINT

 

FLASHBACK DATABASE KOMUTLARIYLA GERİ DÖNMEK :

SQL >FLASHBACK DATABASE TO_TIMESTAMP SYSDATE-1;
SQL >FLASHBACK DATABASE TO RESTORE POINT MY_RP;
SQL >FLASHBACK DATABASE TO SCN 1111111;

 

Örnek :
Veritabanımızı belli bir SCN ye geri almak için aşağıdaki adımlar uygulanabilir.

SQL> shutdown immediate
SQL> startup mount
SQL> flashback database to scn 2955736;
SQL> alter database open resetlogs;

 

flashback database komutları veritabanınız mount modda iken çalıştırılmalıdır. flashback database işlemi bittikten sonra veritabanınızı  “alter database open resetlogs” komutuyla açmalısınız.

Flashback Database logları için gerekli alanı  :

SQL> SELECT ESTIMATED_FLASHBACK_SIZE FROM V$FLASHBACK_DATABASE_LOG;

 

sorgusunu çalıştırarak bulabilirsiniz.

Varsayılan olarak tüm permanent tablo alanlarında flashback logları oluşturulur. Kapatmak isterseniz :

SQL> ALTER TABLESPACE tbs_1 FLASHBACK OFF;

 

komutunu kullanabilirsiniz. Tekrar açmak için :

SQL> ALTER TABLESPACE tbs_1 FLASHBACK ON;

 

komutu kullanılabilir.

Umarım faydalı olur

Türkiye’nin lider online kumarhane deneyimine adım atmak için 1win https://1win-turkey.org adresini ziyaret edin! Yüksek bahis oranları ve çeşitli oyun seçenekleriyle heyecan dolu anlar yaşayın.

Loading

Bir yanıt yazın

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