Flashback database

Flashback Database

Configure the following database settings before enabling Flashback Database:

    Your database must be running in ARCHIVELOG mode, because archived logs are used in the Flashback Database operation.

    You must have a fast recovery area enabled, because flashback logs can only be stored in the fast recovery area.

    For Oracle Real Application Clusters (Oracle RAC) databases, the fast recovery area must be in a clustered file system or in ASM.

Limitations of Flashback Database

Creating Normal and Guaranteed Restore Points

To create a restore point:

SQL> CREATE RESTORE POINT before_upgrade;

SQL> CREATE RESTORE POINT before_upgrade GUARANTEE FLASHBACK DATABASE;

List RESTORE POINT

LIST RESTORE POINT ALL;

SQL> SELECT NAME, SCN, TIME, DATABASE_INCARNATION#,GUARANTEE_FLASHBACK_DATABASE,STORAGE_SIZE FROM V$RESTORE_POINT;

Flashback Example

Set the environment to correct instance

ps -ef | grep pmon
. oraenv

Get restore point name and make note of it from sqlplus

SQL> select name, host_name, status from gv$instance;
SQL> select log_mode,flashback_on from v$database;
SQL> select name,time from v$restore_point;

Stop the database and put it in mount state using srvctl

srvctl status database -d MYTESTDB
srvctl stop database -d MYTESTDB
srvctl status database -d MYTESTDB
srvctl start instance -d MYTESTDB -i MYTESTDB1 -o mount

Flashback to restore point using sqlplus

SQL> select instance_name,status from gv$instance;

SQL> flashback database to restore point REST_POINT;

SQL> alter database open resetlogs;

Database altered.

Stop and start the database and make sure all instances are up, using srvctl

srvctl stop database -d MYTESTDB
srvctl start database -d MYTESTDB
srvctl status database -d MYTESTDB