Flashback Database explained and limitation

Last updated on March 9th, 2019 at 07:01 am

What is Flashback Database
a)New feature from 10.1 onwards, Uses past block images to back out changes to a oracle database
b)During normal database operation, Oracle occasionally logs past block images in flashback logs
c)Flashback logs are  written sequentially not archived
d) Oracle automatically creates, resizes and deletes flashback logs in the flash recovery area
e) DBA should be aware of flashback logs to monitor performance,to decide how much space to allocate to flash recovery area
f)Allows database to be recovered to a previous time to correct problems caused by logical data corruptions,user errors

How flashback database works
a)Before images are used to restore database to a point in the past
b)Forward recovery is then used to bring the database to a consistent state
c) So it both used the flashback logs and archive log . Both should be available to flash back the database.
d) past block images are created using the new process RVWR background process

How to configure flashback database
a)Archiving must be enabled
b)Flash recovery area must be configured using
DB_RECOVERY_FILE_DEST_SIZE – size of flashback recovery area in bytes
DB_RECOVERY_FILE_DEST – location of flashback recovery area
c)Open the database in MOUNT EXCLUSIVE mode and turn on the flashback feature:
d) Set the Flashback Database retention target:
To enable Flashback Database, Issue the following command:
SQL> select flashback_on from  v$database;
e)To disable disable Flashback Database, issue the following command
f)Monitor logging in the Flashback Database logs:

SQL> select begin_time, flashback_data,
db_data, redo_data, ESTIMATED_FLASHBACK_SIZE
from   v$flashback_database_stat;

g)Monitor the Flashback Database retention target:
SQL> select * from   v$flashback_database_log;

More information about Flashback Database
a)Flashback uses a flashback generation buffer
Size of generation buffer is recorded in V$SGASTAT
Size is determined by _flashback_generation_buffer_size
defaults to 4194304
b) Flashback uses the recovery writer (RVWR) background process to copies flashback blocks from flashback generation buffer to flashback logs
c)All blocks are logged when they first become dirty Includes data, indexes, undo, segment headers, bitmaps
d)  Subsequent changes not necessarily logged
e) Amount of flashback redo log generated roughly equivalent to value of physical writes statistics
f) Very similar design to LGWR  ie. Changes initially written to memory buffer and RVWR subsequently flushes flashback records to disk

Related Articles

Top 10 Useful Queries for Flashback Database

Recover drop/truncate/delete table on primary using flashback on standby database

how to Flashback when we have dataguard

Flashback PDB in Oracle Database 12c Release 2

What you need to know about Oracle Flashback query

Leave a Reply