Oracle Database 10g comes with a number of new features such as new features in flashback, Data Guard and transaction recovery monitoring. Also covered here are RMAN improvements and general database recovery improvements. (From the book, Oracle Database 10g New Features, by Robert Freeman, McGraw/Hill-Osborne, 2004, ISBN: 0072229470.)
Oracle Database 10g comes with a number of new features that are designed to provide enhanced availability and recoverability within the Oracle database. This chapter covers the following topics such as general database recovery improvements, RMAN improvements, new flashback features, new transaction recovery monitoring features, and new Data Guard features.
General Database Recovery Improvements
Several changes have been made in Oracle Database 10g that relate to backup and recovery:
Easier recovery through the resetlogs command
Changes to the alter database archivelog command
New and changed Oracle Database 10g backup commands
Easier Recovery Through the resetlogs Command
One of the downsides to incomplete recovery of an Oracle database in Oracle Database versions prior to Oracle Database 10g was the requirement to use the resetlogs command when opening the database. Because recovery through resetlogs was not supported in Oracle9i, you needed to perform a backup of the database in order for it to be recoverable, though there were some goofy and complex (and altogether unreliable) means to recover the database through resetlogs prior to Oracle Database 10g. Now, Oracle Database 10g makes recovery through the resetlogs command easier than ever.
The nice thing about being able to recover through the resetlogs command is that there is really nothing new that you have to do, itís all internal to Oracle Database 10g. You can use the recover database, recover tablespace, or recover datafile commands, just as you always have. The RMAN restore and recover database commands are also unchanged, and support the ability to recover beyond the point of the last resetlogs command.
Supporting Changes to the log_archive_format Parameter
Also associated with the ability to recover through the resetlogs command, is a change in the log_archive_format parameter. Oracle Database 10g now requires that a new format specification be used when the compatible parameter is set to 10.0 or greater. This format specification,%r, identifies the logical incarnation of the database and changes each time the resetlogs command is issued. The default format for log_archive_format in Oracle Database 10g is %t_%s_%r.dbf. You could modify the log_archive_format parameter setting in Oracle Database 10g so that it might look something like this:
And the resulting physical file might look something like this:
Supporting Changes to Oracle Dynamic Views
To support the ability to recover through the use of the resetlogs command, the dynamic views V$LOG_HISTORY and V$OFFLINE_RANGE have been modified. First, the data in these views is not cleared out after a successful resetlogs operation. Second, two new columns have been added to each of these views:
RESETLOGS_CHANGE# Indicates the system change number (SCN) associated with the execution of the resetlogs command
RESETLOGS_TIME Indicates the time associated with the execution of the resetlogs command
Also, the V$DATABASE_INCARNATION and V$ARCHIVED_LOG views have been changed such that they will not be cleared after the execution of the resetlogs command.
Supporting Changes to Oracle Standby Databases
One other bit of functionality that you might want to be aware of is in regard to Oracle standby databases. When a resetlogs operation is detected on a standby database, the managed recovery process will be canceled. At this point, you have two options:
Maintain recovery following the new logical database branch created by the use of the resetlogs command.
Maintain the same logical database branch, through the use of the resetlogs command.
Either way, you can continue to apply all redo generated after the use of the resetlogs command on the primary database server.
Changes to the alter database archivelog Command
When you issue the alter database archivelog command in Oracle Database 10g, archiving will be started by default. Thus, you donít need to use the log archive start command. The V$DATABASE view column LOG_MODE indicates AUTOMATIC if archiving is enabled in this fashion and indicates MANUAL if you have decided to use the new manual parameter to override the default behavior.
This chapter is from Oracle Database 10g New Features, by Robert Freeman (McGraw-Hill/Osborne, 2004, ISBN: 0072229470). Check it out at your favorite bookstore today. Buy this book now.