Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: recover database until cancel
Hi,
> I am pretty sure Oracle uses some mechanism other than v$log_history.
> Appreciate if you can provide any pointers on Oracle's inner workings.
It is little more than V$log_history or low scn from the archive logs. I will attempt as I am sitting idle in the airport to catch my (delayed) flight!!
During normal operation, the datafile headers will have the stop scn set to 0xFFFFFFF.FFFF (or infinity) and the behaviour is almost same when you say recover database until cancel.If you say until time or until change, it gets the highscn from the log_history and sets the stop scn to that number and stops the recovery when it reaches that stop scn.
Now, we will make a quick visit to the block recovery. When the
trasnaction updates a block, it keeps the XID in the ITL (which is in
the the block header) for the following transaction to help to
construct the read-consistent image of the block.
Any other process trying to get the consistent image will get the UBA
and
Check the following URL for some discussion of relationship between
transactions/rollback segments/ITL.(http://www.quest-pipelines.com/
newsletter/Transaction%20Management.htm) Also while doing the recovery
we reconstruct the block and when the block has open ITLs, we scan the
XID and look for the RBA. RBA has the following format LSN.BLKN.BYTN
where LSN is the Log Sequence Number and BLKN is Block Number and
BYTN is Byte Number within the block. So to recover the block we know
exactly where the redo is stored and we can specifically ask that
particular redo log.
Best Regards,
K Gopalakrishnan
Co-Author: Oracle Wait Interface, Oracle Press 2004
http://www.amazon.com/exec/obidos/tg/detail/-/007222729X/
Author: Oracle Database 10g RAC Handbook, Oracle Press 2006 http://www.amazon.com/gp/product/007146509X/ Received on Fri Apr 20 2007 - 21:57:09 CDT
![]() |
![]() |