
Standby veritabanını bazı testleri yapmak için read-write modda açmak isteyebiliriz. Standby veritabanını tekrar eski haline alarak devam edebilmek için bazı işlemleri yapmalıyız. Stanby veritabanı üzerinde bazı işlemler yaptıktan sonra tekrar eski durumuna alabilmemiz için, Flasback database özelliğini açmalıyız, Flasback database özelliğini kullanabilmek için ise Fast Recovery Area (FRA) alanını kullanmamız gerekmektedir.
Bizim durumumuzda FRA zaten aktif çalışır durumda fakat aktif olmayanlar için aşağıdaki şekilde aktif hale getirebilirsiniz. FRA alanını set etmek için iki tane parametreyi set etmemiz gerekiyor.
Alter system set DB_RECOVERY_FILE_DEST_SIZE=<Size G veya M>
Alter system set DB_RECOVERY_FILE_DEST= <ilgili disk alanının yolu Ör +FRA>
Bu parametreleri set ettikten sonra Flashback database özelliğini aktif edebiliriz. Enable yapmak için öncelikle MRP yi durdurmalıyız, ayrıca bRW açıldığında log göndermesin karşı tarafa diye log_archive_dest_ ne ise bizde DEFER a çekmemizde fayda var.
SQL> alter database recover managed standby database cancel;
Database altered.
SQL> alter database flashback on;
Database altered.
SQL> alter system set LOG_ARCHIVE_DEST_STATE_2=DEFER scope=both;
System altered.
Geri dönebileceğimiz bir restore point noktasını garanti edelim.
SQL> create restore point back_to_stb guarantee flashback database;
Restore point created.
SET LINESIZE 150
SET PAGESIZE 50
COLUMN NAME FORMAT A30
COLUMN SCN FORMAT 999999999999999
COLUMN TIME FORMAT A20
select NAME,SCN,TIME from v$restore_point;
NAME SCN TIME
------------------------------ ---------------- --------------------
BACK_TO_STB 36578762905595 17.12.2024 09.16.47
Yukarıda back_to_stb adında bir restore point noktasını garanti altına aldık, standby tarafındaki işlemlerimiz bittiğinde tekrar bu noktaya döneceğiz.
Standby veritabanını aktif ederek read-write modda açabiliriz.
SQL> alter database activate standby database;
Database altered.
COntrol file standby dan current duruma geldimi kontrolünü sağlayalım
SQL> select CONTROLFILE_TYPE from v$database;
CONTROL
-------
CURRENT
Artık veritabanının açabiliriz
SQL> startup mount force;
ORACLE instance started.
Total System Global Area 243268216 bytes
Fixed Size 8895096 bytes
Variable Size 180355072 bytes
Database Buffers 50331648 bytes
Redo Buffers 3686400 bytes
Database mounted.
SQL> alter database set standby database to maximize performance;
Database altered.
SQL> alter database open;
Database altered.
Stanby veritabanımız read-write modunda açıldı artık istediğimiz işlemi yapabiliriz. Ancak primary database çalışıyor ve arada GAP oluşuyor o yüzden bir an önce ne yapacaksak yapıp tekrar eski haline getirmeliyiz. Eğer GAP çok büyürse fark backup alıp bunu standby tarafında işletmek zorunda kalabiliriz.
Bu aşamadan sonra dumy bir kayıtla test yapabiliriz.
RETURN TO STANDBY
içindeki verilerle birlikte tablomuz burada gerekli sorguları ve işlemleri yaptık şimdi standby veritabanımız eski durumuna tekrar alalım.
İlk olarak veritabanını mount moda alalım
SQL> startup mount force;
ORACLE instance started.
Total System Global Area 243268216 bytes
Fixed Size 8895096 bytes
Variable Size 180355072 bytes
Database Buffers 50331648 bytes
Redo Buffers 3686400 bytes
Database mounted.
Veritabanını restore point ettiğimiz noktaya tekrar alalım.
SQL> flashback database to restore point back_to_stb;
Flashback complete.
Veritabanını pyhsical stanby veritabanı olarak set edelim
SQL> alter database convert to physical standby;
Database altered.
veritabanını tekrar mount modda açalım.
SQL> startup mount force;
ORACLE instance started.
Total System Global Area 243268216 bytes
Fixed Size 8895096 bytes
Variable Size 180355072 bytes
Database Buffers 50331648 bytes
Redo Buffers 3686400 bytes
Database mounted.
MRP procesesini başlatım ve redo apply işlemi gerçekleşsin.
SQL> alter database recover managed standby database using current logfile disconnect;
Database altered.
Kontrollerimizi yapalım.
SQL> select PROCESS,STATUS,THREAD#,SEQUENCE# from v$managed_standby;
PROCESS STATUS THREAD# SEQUENCE#
--------- ------------ ---------- ----------
ARCH CONNECTED 0 0
DGRD ALLOCATED 0 0
DGRD ALLOCATED 0 0
ARCH CONNECTED 0 0
ARCH CONNECTED 0 0
ARCH CONNECTED 0 0
RFS IDLE 1 0
RFS IDLE 1 41
RFS IDLE 2 28
RFS IDLE 2 0
MRP0 APPLYING_LOG 1 41
Bir yanıt yazın