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: Oracle Instance Recovery (I don't get it :)

Re: Oracle Instance Recovery (I don't get it :)

From: thiru <tmgn_at_excite.com>
Date: Mon, 21 Jun 1999 12:44:41 -0400
Message-ID: <376E6BF9.1F242559@excite.com>


In an effort to Confuse you further , I am just dropping in the air, One more fact ..

Even the Oracle Datafiles may have UNCOMITTED transactions.This looks hard to believe,but it is true. Once Every DBWR_Timeout or CHECKPOINT, to free up the Databuffers from the SGA, DBWR writes the DIRTY Buffers( comitted or not) onto the Datafiles.
Using the Info in the Rollback Segments(which inturn gets written to the Online Redolog files), Oracle differentiates between Data Comitted and non-comitted during the Recovery.

-Thiru

John Higgins wrote:

> QTFM:
>
> "The Redo Log and Rolling Forward
>
> The redo log is a set of operating system files that record all changes made to
> any
> database buffer, including data, index, and rollback segments, whether the
> changes
> are committed or uncommitted. The redo log protects changes made to database
> buff-ers
> in memory that have not been written to the datafiles.
>
> The first step of recovery from an instance or disk failure is to roll forward,
> or reap-ply
> all of the changes recorded in the redo log to the datafiles. Because rollback
> data is also recorded in the redo log, rolling forward also regenerates the
> corre-sponding
> rollback segments.
>
> Rolling forward proceeds through as many redo log files as necessary to bring
> the
> database forward in time. Rolling forward usually includes online redo log files
>
> and may include archived redo log files.
>
> After roll forward, the data blocks contain all committed changes as well as any
>
> uncommitted changes that were recorded in the redo log.
>
> Rollback Segments and Rolling Back
>
> Rollback segments record database actions that should be undone during certain
> database operations. In database recovery, rollback segments undo the effects of
>
> uncommitted transactions previously applied by the rolling forward phase.
>
> After the roll forward, any changes that were not committed must be undone.
> After
> redo log files have reapplied all changes made to the database, then the
> correspond-ing
> rollback segments are used. Rollback segments are used to identify and undo
> transactions that were never committed, yet were recorded in the redo log and
> applied to the database during roll forward. This process is called rolling
> back."
>
> Andrey Dmitriev wrote:
>
> > Now I am really confused. I thought so too, but as I was reading
> > Oracle 8 Tuning (Oracle series) I have noticed that the author(s) say
> > that Redo Logs contain only committed information. Does anybody else
> > have an opinion? Thanx. Meanwhile I think I am going to order Oracle 8
> > Architecture from bn or amazon :)
> >
> > On Sun, 20 Jun 1999 23:26:53 +0200, "Sybrand Bakker"
> > <postbus_at_sybrandb.demon.nl> wrote:
> >
> > >Hi Andrey,
> > >
> > >Rollback segments are protected by the redo log files too, so rollback data
> > >is in the redo log. This makes sure you can rollback uncommitted
> > >transactions.
> > >
> > >Hth,
> > >
> > >Sybrand Bakker, Oracle DBA
> > >
> > >Andrey Dmitriev wrote in message <376d2dfc.6908664_at_news.earthlink.net>...
> > >>Hi,
> > >>
> > >>I don't completely understand what is going on during Oracle Instance
> > >>Recovery. The redo logs are applied (roll forward?) and then
> > >>uncommited transactions are rolled back? But don't redo logs only have
> > >>only commited transactions?
> > >>
> > >>Thanx
> > >>
> > >
> > >
Received on Mon Jun 21 1999 - 11:44:41 CDT

Original text of this message

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