|
-
Instance Recovery
What Pando telling absoluteley correct but let me explain.
Again the confusion is at
"Oracle reads redo log and RBS, then use redo to rebuild RBS and read RBS again. RBS are just data, they are flushed to disk by checkpoints as well and checkpoints will ensure you that the redo log which protects the undo can be overwritten (the dirty RBS data is flushed to disk)"
Oracle Doc Says
"Rollback entries change data blocks in the rollback segment, and Oracle records all changes to data blocks, including rollback entries, in the redo log. This second recording of the rollback information is very important for active transactions (not yet committed or rolled back) at the time of a system crash. If a system crash occurs, Oracle automatically restores the rollback segment information, including the rollback entries for active transactions, as part of instance or media recovery. Once the recovery is complete, Oracle performs the actual rollbacks of transactions that had been neither committed nor rolled back at the time of the system crash. "
Again from Oracle Doc (***)
"For each rollback segment, Oracle maintains a transaction table--a list of all transactions that use the associated rollback segment and the rollback entries for each change performed by these transactions."
From metalink
"Oracle7 keeps a transaction table in the header of every rollback segment. Every transaction must have update access to the transaction table for its rollback segment."
So it is clear that the status of the transaction is available from the ROLLBACK Segment.
Coming back to Pando's answer
"Oracle reads redo log and RBS, then use redo to rebuild RBS and read RBS again. RBS are just data, they are flushed to disk by checkpoints as well and checkpoints will ensure you that the redo log which protects the undo can be overwritten (the dirty RBS data is flushed to disk)"
let me divide the Rollback Information in to two Category
1. Rollback Information available in the RBS with transaction status
2. Rollback information not avaialble in the RBS which is populated from REDO Log
Case 1:
In this case there will be no problem for recovery (Roolback) since all the information ia availbale in the RBS. Refer ***
Case 2:
Well, this case, keep in mind that, there was a check point happened during the logswitch. SO all the RBS infomation is flushed to the disk. So only RBS infomation is not availbale in the disk is partial of the current REDO logo file. And which is populated from the redo log during the ( I am talking only about the Instance recovery) startup. ie oracle is not rebuilding the RBS 100% from the redo log, but rather rebuilding the RBS for missing data only. This missing RBS data is only "PARTIAL OF THE CURENT REDO LOG FILE". So over writing your redo log files in noarchive log mode is not going to tamper the instance recovery.
Guys, agree with me or I am wrong..?
Thomas
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|