Flashback Primary Database In Dataguard Environment
1. Make sure both primary and standby databases have flashback enabled.
– PRIMARY DB
SQL> select name,database_role,flashback_on from v$database;
NAME DATABASE_ROLE FLASHBACK_ON
——— —————- ——————
PRIMDB PRIMARY YES
— STANDBY DB
SQL> select name,database_role,flashback_on from v$database;
NAME DATABASE_ROLE FLASHBACK_ON
——— —————- ——————
STDBY PHYSICAL STANDBY YES
2. Create a restore point in the primary:(PRIMARY)
SQL> create restore point BEFORE_TEST GUARANTEE FLASHBACK DATABASE;
Restore point created.
SQL> select scn,NAME from v$restore_point;
SCN NAME
———- ———————–
14084750 TEST
4. Shutdown Primary database ( PRIMARY)
SQL> SHUTDOWN IMMEDIATE
Database closed.
Database dismounted.
ORACLE instance shut down.
5. Mount primary database ( PRIMARY)
SQL> startup mount
ORACLE instance started.
Total System Global Area 1.1107E+10 bytes
Fixed Size 7644464 bytes
Variable Size 9294584528 bytes
Database Buffers 1711276032 bytes
Redo Buffers 93011968 bytes
Database mounted
6. Flashback primary database ( PRIMARY)
SQL> flashback database to restore point TEST;
Flashback complete
7 . Open primary database in resetlogs: ( PRIMARY)
SQL> alter database open resetlogs;
Database altered
8. Cancel the recovery on standby: ( STANDBY)
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
9. Flashback standby database ( STANDBY)
SQL>FLASHBACK STANDBY DATABASE TO 15195661;
Flashback complete
10. Start recovery ( STANDBY)
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
Database altered