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: what happens if you lose a rollback segment?

Re: what happens if you lose a rollback segment?

From: Ryan <rgaffuri_at_cox.net>
Date: Sat, 18 Oct 2003 20:20:11 -0400
Message-ID: <VMkkb.91968$a16.35396@lakeread01>

"Howard J. Rogers" <hjr_at_dizwell.com> wrote in message news:3f91a0a7$0$21650$afc38c87_at_news.optusnet.com.au...
> Ryan wrote:
>
> >>
> >> --
> >> Sybrand Bakker, Senior Oracle DBA
> >
> > I understand, but since you need to restore from a backup datafile if
you
> > lose your rollback segment. What is the point of backing up your
rollback
> > tablespace? You have to restore from your 1AM datafile, then roll
forward.
> > The rollback segment you would have backed up at 1AM wouldnt be any use
if
> > you are rolling forward until 1PM?
> >
> > Im sure Im missing something here?
>
>
> It's a good question, actually.
>
> First, there's the answer that says any recovery consists of being able to
> roll everything forward via the redo logs. Then you get to the end of the
> redo, and start rolling everything back that wasn't committed. You need
> rollback segments for both of those phases. During the roll forward phase,
> we replay your original transactions exactly. So if you generated some
> rollback when you first did the transaction, we have to be able to
generate
> it again during recovery. And during the rollback phase of recovery, we
> obviously use rollback generated during the roll forward phase.
>
> Hopefully, that's enough of an explanation to persuade you that rollback
> segments *in principle* are vital for all recoveries.
>
> But that begs the question: why can't you just create new rollback
segments
> to perform recovery? Why do you have to have the original ones??
>
> To which the answer is: redo consists of change vectors. That is "put this
> value, in that block of object X, on data file Y". And that goes for
> rollback data, too. Were you to create a new rollback segment, you'd be
> talking about object A, not X. And the redo change vector couldn't be
> applied. And if we couldn't therefore re-generate your rollback data
> properly, we couldn't perform recovery properly.
>
> Regards
> HJR
> --

I get it now. However, its common to stagger your hot backups. Say do a few data files a night. Lets say you have this instance.

You have 3 data files and 1 rollback tablespace. You backup 1 data file/night.

Do you need to backup your rollback tablespace every night? Also, lets say you are doing a hotbackup of datafile A and you are doing a hotbackup of your rollback tablespace. I would assume you need to keep your datafile and your rollback tablespace in 'backup' mode for the same period of time. If you backup your datafile first, then backup your rollback tablespace they could be at two different SCNs. This means the rollback needed to restore the datafile may not exist in the rollback tablespace at the time of the backup.

am I correct here?
> --------------------------------------------
> See my brand new website, soon to be full of
> new articles: www.dizwell.com.
> Nothing much there yet, but give it time!!
> --------------------------------------------
>
Received on Sat Oct 18 2003 - 19:20:11 CDT

Original text of this message

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