About Opening with the RESETLOGS Option

来源:互联网 发布:阿里云 怎么注销 编辑:程序博客网 时间:2024/05/28 22:12

官方文档地址:http://docs.oracle.com/cd/B19306_01/backup.102/b14191/osrecov.htm#i1007409

 

 

About Opening with the RESETLOGS Option

The RESETLOGS option is alwaysrequired after incomplete media recovery or recoveryusing a backup control file. Resetting the redo log does thefollowing:

  • Archives the current online redo logs (if they are accessible)and then erases the contents of the online redo logs and resets thelog sequence number to 1. For example, if the current online redologs are sequence 1000 and 1001 when you openRESETLOGS, then the database archives logs 1000 and1001 and then resets the online logs to sequence 1 and 2.

  • Creates the online redo log files if they do not currentlyexist.

  • Reinitializes the control file metadata about online redo logsand redo threads.

  • Updates all currentdatafiles and online redo logs and all subsequent archived redologs with a newRESETLOGS SCN and timestamp.

Because the database will not apply an archived log to adatafile unless the RESETLOGS SCN andtime stamps match, the RESETLOGS prevents you fromcorrupting datafiles with archived logs that are not from directparent incarnations of the current incarnation.

In prior releases, it was recommended that you back up thedatabase immediately after theRESETLOGS. Because youcan now easily recover a pre-RESETLOGS backup like anyother backup, making a new database backup is optional. In order toperform recovery through resetlogs you must have all archived logsgenerated since the last backup and at least one control file(current, backup, or created).

Figure 18-1 shows the case of a database that can only berecovered to log sequence 2500 because an archived redo log ismissing. When the online redo log is at sequence 4000, the databasecrashes. You restore the sequence 1000 backup and prepare forcomplete recovery. Unfortunately, one of your archived logs iscorrupted. The log before the missing log contains sequence 2500,so you recover to this log sequence and openRESETLOGS. As part of the RESETLOGS, thedatabase archives the current online logs (sequence 4000 and 4001)and resets the log sequence to 1.

You generate changes in the new incarnation of the database,eventually reaching log sequence 4000. The changes between sequence2500 and sequence 4000 for the new incarnation of the database aredifferent from the changes between sequence 2500 and sequence 4000for the old incarnation. You cannot apply logs generatedafter 2500 in the old incarnation to the newincarnation, but you can apply the logs generatedbefore sequence 2500 in the old incarnation to the newincarnation. The logs from after sequence 2500 are said to beorphaned in the new incarnation because they areunusable for recovery in that incarnation.

原创粉丝点击