raporlama vb. sistemler için kullanılabilir. Bu kullanımın ardından tekrar standby moda çekilelebilir.
Bu işlemi aşağıdaki adımları izleyerek yapabiliriz;
1.Fiziksel Standby Veritabanında Yapılması Gerekenler
a. Flash recovery alananının ayarlanması gerekir bu işlem aşağıdaki şekilde yapılır.
SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=50G;
SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST='+RECOVER';
b.Stanby veritabanını log apply moddan çıkartıp, guarantee(garantili) restore point oluşturulur.
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
SQL> CREATE RESTORE POINT before_dr GUARANTEE FLASHBACK DATABASE;
2.Primary(birincil) veritabanında yapılması gerekenler
a. Mevcut logların arşivlenmesi sağlanır
SQL> ALTER SYSTEM ARCHIVE LOG CURRENT;
b. Stanby veritabanına log gönderen servis defer moda çekilir.
SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_3=DEFER;
3. Stanby veritabanının aktifleştirilmesi
a.stanby database aktifleştirilmesi aşağıdaki şekilde yapılır
SQL> ALTER DATABASE ACTIVATE STANDBY DATABASE;
b.stanby veritabanının koruma modunu maksimum performans olacak şekilde aşağıdaki şekilde değiştirilir.
SQL> STARTUP MOUNT FORCE;
SQL> ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE;
SQL> ALTER DATABASE OPEN;
3. Aktifleştirilen veritabanının standby moda dönüştürülmesi.
SQL> STARTUP MOUNT FORCE;
SQL> FLASHBACK DATABASE TO RESTORE POINT before_dr;
SQL> ALTER DATABASE CONVERT TO PHYSICAL STANDBY;
SQL> STARTUP MOUNT FORCE;
4. Standby veritabanının tekrar recovery moda çekilmesi
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
5. Primary veritabanından log gönderiminin aktifleştirilmesi
SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_3=ENABLE;
#standby taraftaki listener, listener123'ü ethernet aktif edildikten sonra aç
Falshback Database'in Açılması
Falashback database bir veritabanının zaman içerisinde kaynakların elverdiği ölçüde ileri geri alınmasına yardımcı olan, bu sayede kullanıcı hatalarına karşı bir önlem
olarak kullanılan bir teknolojidir. Genellikle veri silinmesi(drop,tuncate, delete) durumlarında kaybolan verileri çok basit şekilde geri getirmeye yardımcı
olur.Flashback database teknolojisi datafile silinmesine bir önlem değildir. Flashback logları controlfile'in recreate edildiği durumlarda da işe yaramaz.
1. Veritabanı açıksa kapatılır ve mount modda açılır.
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
2. Eğer istenirse flashback retention süresi değiştirilebilir.
SQL> ALTER SYSTEM SET DB_FLASHBACK_RETENTION_TARGET=4320; # 3 gün,defaultu 1 gündür(1440) dakika
3. flashback database aktifleştirilir
SQL> ALTER DATABASE FLASHBACK ON;
Bir tablespace için flashback loglama özelliğini aşağıdaki şekilde devre dışı bırakılabilir.
SQL> ALTER TABLESPACE tbs_3 FLASHBACK OFF;
ya da devre dışıysa aşağıdaki şekilde aktifleştirilebilir
SQL> ALTER TABLESPACE tbs_3 FLASHBACK OFF;
örnek flashback komutları;
FLASHBACK DATABASE TO TİMESTAMP SYSDATE-2;
FLASHBACK DATABASE TO RESTORE POİNT ‘before_dr’;
FLASHBACK DATABASE TO SCN 1012568;
4. Flashback database in kapatılması
Veritabanı mount modda açılır ve aşağıdaki komut çalıştırılır.
SQL> ALTER DATABASE FLASHBACK ON;
Normal Ve Garantili Restore Point Oluşturma
restore poin ; flashback açık olan veritabanlarında bir isimle belirlenen noktaya kolayca dönmek için kullanılan bir teknolojidir. guarantee ve normal olmak üzere 2
şekilde oluşturulabilir. normal şekilde oluşturulduğu zaman o noktaya geri dönebilmenin garantisi yoktur. eğer DB_RECOVERY_FILE_DEST_SIZE alanı dolarsa varolan
logların üzerine yazılır ve normal yaratılan restore point ler bozulabilir. Bir restore point in hiç bir şekilde bozulmasını istemiyorsanız bunu guarantee restore
point olarak oluşturmak gerekir.
Normal restore point oluşturma;
SQL> CREATE RESTORE POINT before_upgrade;
Restore point created.
Guarantee restore point oluşturma
select flashback_on from v$database;
SQL> CREATE RESTORE POINT before_upgrade GUARANTEE FLASHBACK DATABASE;
Restore point created.
Restore Point'lerin listelenmesi
SQL> SELECT NAME, SCN, TIME, DATABASE_INCARNATION#,
GUARANTEE_FLASHBACK_DATABASE,STORAGE_SIZE
FROM V$RESTORE_POINT;
sorgusuyla tüm restore point'ler veya aşağıdki sorguyla Guarantee restore point'ler listelenebilir.
SQL> SELECT NAME, SCN, TIME, DATABASE_INCARNATION#,
GUARANTEE_FLASHBACK_DATABASE, STORAGE_SIZE
FROM V$RESTORE_POINT
WHERE GUARANTEE_FLASHBACK_DATABASE='YES';
Restore Point'in silinmesi
Aşağıdaki şekilde yapılır.
SQL> DROP RESTORE POINT before_app_upgrade;
Restore point dropped.