Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Recover when Online Redo Log lost.

Re: Recover when Online Redo Log lost.

From: Howard J. Rogers <hjr_at_dizwell.com>
Date: Sun, 15 Aug 2004 07:50:45 +1000
Message-ID: <411e8928$0$16377$afc38c87@news.optusnet.com.au>


David Fitzjarrell wrote:

> cnwy_at_263.net (yoke wang) wrote in message
> news:<42c18ceb.0408132015.7054406d_at_posting.google.com>...

>> > If you shutdown immediate, and then immediately delete the online logs,
>> > "recovery" would be required (to reconstuct some working redo logs).
>> > But it's a fake recovery, as you imply: recover database until cancel,
>> > immediately cancel, alter database open resetlogs. I suppose this is an
>> > example of an incomplete recovery that actually doesn't lose any data,
>> > and some people might therefore call it a complete recovery -but they'd
>> > be wrong. You've still just performed an incomplete recovery, despite
>> > not having lost any committed data. There should be no need to do a
>> > prior restore of anything, because the data files and control files are
>> > consistent with each other.
>>   But why oracle must open the database resetlogs?I think there is
>> someting lost which was recorded in red log. Otherwise Oracle can
>> recreate the redo log and open the database noresetlogs.Is it right?
>> 
>> Thanks a million.
>> 
>> wy.

>
> It is not right, as you do not have all of the original redo logs
> present. You are missing a current redo log, thus making a
> noresetlogs open impossible. From the documentation:
>
> Specify NORESETLOGS if you want Oracle to use all files in the LOGFILE
> clause as they were when the database was last open. These files must
> exist and must be the current online redo log files rather than
> restored backups.
>
> Since your case involves a deleted current redo log opening the
> database noresetlogs is, as I stated before, impossible. You have but
> one choice, to open the database resetlogs and let Oracle do its work.
>
> David Fitzjarrell

I have been busy installing 38 different flavours of Linux, and so missed the original reply... but David has it spot on.

Why must you do a 'resetlogs'? Because you are missing an online log, and need it re-created. You said that yourself, in fact: "Otherwise Oracle can recreate the redo log..." Absolutely true: now, how do you re-create redo logs? "Alter database ADD logfile" won't do it, because as the syntax itself makes clear, that's merely ADDing a brand new log, not re-creating an old one.

In fact, as David says, the command to recreate online logs is indeed "alter database open resetlogs". It's just the way it is.

So yes, a resetlogs is required. It's why multiplexing your online logs is so important, so that the need to resetlogs because of log loss hopefully never arises.

Regards
HJR Received on Sat Aug 14 2004 - 16:50:45 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US