Database Journal
MS SQL Oracle DB2 Access MySQL PostgreSQL Sybase PHP SQL Etc SQL Scripts & Samples Tips Database Forum Rss Feed

» Database Journal Home
» Database Articles
» Database Tutorials
MS Access
SQL Scripts & Samples
» Database Forum
» Slideshows
Free Newsletters:

News Via RSS Feed

Rss Feed

Database Journal |DBA Support |SQLCourse |SQLCourse2

Featured Database Articles


Posted Apr 2, 2009

Oracle Flash - What is it?

By James Koopmann

Both system failures and human blunders continually happen, but you just might be able to tread water if you implement Oracle’s flash features.

I am almost ashamed to say that I’ve not every used Oracle’s flash features in a production environment. OK, you caught me; I’ve never used them at all. From my perspective, it just so happens that I’ve come across a client that there seems to be a real need. Just so happens I’ve been asked to monitor a handful of databases for an MSP that, through the high-potential of human error, requires near instantaneous recovery of unforeseeable data corruption. This environment begs for management control of users. However, as we all know that is not always an option. Therefore, to cover every possible mistake that could happen, I’ve decided to venture down the road of using Oracle’s flash features to help protect this volatile environment.

Now you might be saying: I’ve never heard of Oracle Flash! And you’d be right. I’m actually referring to both Oracle’s Flashback technology and Oracle's flash backup and recovery features. If you’ve never used either of these technologies or just want to get a flavor for all they have to offer, stick with this series of articles as I’ll venture into all its nooks and crannies. To kick things off, there’s no better place than just defining what both of these features are and have to offer. This will provide not only an introduction for those of us not familiar with flash features but will also provide a road map for future articles and deployment.

Oracle Flashback Technology

Oracle’s Flashback technology was most definitely created to help recover from those mistakes, errors, foul-ups, blunders, we fat-fingered humans make and the applications we write. Flashback is part of Oracle’s data recovery options that is nothing more than a method to correct from these errors quickly. For instance, in the past, if we had dropped a table by mistake the method of recovery would be to rebuild from a backup copy of the database—very time consuming and could take hours depending on the availability of a machine and storage to recover to. With Flashback technology, the time to recover the table is nearly equal to the amount of time required to drop it, thus the term Flashback. Through a series of simple commands, users are able to analyze and recover various blunders at the row, transaction, table, tablespace, and database level. A quick look at some of the Flashback technology features easily proves its importance in helping safeguard those environments that are prone to human error or are not as stable as we might like to see:

Flashback Query – allows the user to query data at a point in time in the past. This means that while the data may have been deleted or changed in a table, that data is still available for query results. This also means that you cannot only investigate past data changes but you can use the result sets to reconstruct lost or changed data. Moreover, I’d venture to say that this could also be used in providing some historical reporting capabilities to applications as well as built in repair functionality for users.

Flashback Versions Query – allows a user to query, retrieve, and view all changes made to rows for a time interval—displaying each version of a row as it has changed and providing a unique opportunity to see how that row has changed. This can provide a unique opportunity to pinpoint when changes occur and offer vital debug information for developers and DBAs.

Flashback Transaction – allows for the simple backing out of a transaction along with all its dependent transactions. This provides a very high-level and efficient mechanism to back out all the SQL that is related to a single and identifiable transaction without having to investigate each of the underlying tables and data.

Flashback Transaction Query – just as Flashback Versions Query worked for queries, Flashback Transaction Query allows the user to view all the changes made within a transaction—giving detailed analysis capabilities to developers and DBAs.

Flashback Database – allows users to bring back, recover, or Flashback a database to a point in time. Effectively a complete recovery operation for a database without having to source in a complete database backup from disk or tape—providing simplicity and removing extreme recovery times.

Flashback Table – allows users to bring back, recover, or Flashback a table or set of tables to a point in time while maintaining referential integrity constraints between tables.

Flashback Drop – allows users to resurrect a dropped table and easily recover the table’s indexes, constraints, and triggers.

Flashback Restore Points – as an extension to using time intervals, Oracle provides the ability to set and use user defined restore points—making it easier for users and applications to dynamically set and use in the recovery process.

Oracle Flash Backup and Recovery

Flash backup and recovery, in conjunction with RMAN helps to automate the backup and recovery process by managing all database data within a Flash Recovery Area. The Flash Recovery Area based on disk—enabling faster backups and recoveries because all files are readily available on disk and managed by Oracle’s Recovery Manager (RMAN). While some might say that Oracle Flash Backup and Recovery is just a glorified disk backup I’d like to point out some of the key features that make this a much more viable option than just backing up to disk:

  • Automatic management of backups through policies
  • Automatic management of space allocation
  • Automated failover to previous backup when restore discovers a missing or corrupt backup
  • Automated recovery through a previous point in time recovery
  • Automated channel failover on backup or restore
  • Automated tablespace point-in-time recovery
  • Incremental backups with block change tracking
  • Compression

Clearly Oracle’s Flash features provide a rich and extensive list of features to help safeguard both catastrophic failure and human blunders. Stick around for future articles as I’ll be providing insight into the deployment of these flash features. And as always there’ll be plenty of scripts for you to use. Don’t let this series flash by.

» See All Articles by Columnist James Koopmann

Oracle Archives

Latest Forum Threads
Oracle Forum
Topic By Replies Updated
Oracle Data Mining: Classification jan.hasller 0 July 5th, 07:19 AM
Find duplicates - Unique IDs Lava 5 July 2nd, 08:30 AM
no matching unique or primary key rcanter 1 April 25th, 12:32 PM
Update values of one table based on condition of values in other table using Trigger Gladiator 3 February 29th, 06:01 PM