Flashback Oracle Database on Exadata Machine

There are times when you need to flashback Oracle databases running on Exadata Machine. Database restore point is commonly  used during database upgrade or GoldenGate replication. You can using following steps to flashback Oracle database running on Exadata Machine.

Step  1 : Check Database Status using srvctl
[oracle@dm02dba01 ~]$ srvctl status database -d orcl
Instance orcl1 is running on node dm02dba01
Instance orcl2 is running on node dm02dba02
Step 2 : Stop database using srvctl
[oracle@dm02dba01 ~]$ srvctl stop database -d orcl
Step 3 : Start only 1 instance in mount mode
[oracle@dm02dba01 ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Thu May 10 12:40:27 2018

Copyright (c) 1982, 2016, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup mount
ORACLE instance started.

Total System Global Area 1.0737E+11 bytes
Fixed Size 29888776 bytes
Variable Size 2.8369E+10 bytes
Database Buffers 7.8920E+10 bytes
Redo Buffers 55226368 bytes
Database mounted.

Step 4 : Check list of existing database restore points
SQL> select name,time from v$restore_point;

NAME
--------------------------------------------------------------------------------
TIME
---------------------------------------------------------------------------
upgrade
06-MAY-18 01.53.29.000000000 PM

Step 5 : Flashback database to target restore point
SQL> flashback database to restore point upgrade;

Flashback complete.
Step 6 : Open database instance with resetlogs
SQL> alter database open resetlogs;

Database altered.
Step 7: Shutdown database instance
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
Step 8 : Start database using srvctl
[oracle@dm02dba01 ~]$ srvctl start database -d orcl
[oracle@dm02dba01 ~]$ srvctl status database -d orcl
Instance orcl1 is running on node dm02dba01
Instance orcl2 is running on node dm02dba02