The below diagram’s will explain SMONn instance recovery in detail
We know that LGWR wiill write redo entries into redo log files. But if we have more and more redo entries generated (for huge transactions), redo log file size increases and even terabytes of storage is not sufficient.
To overcome this Oracle designed its architecture so that LGWR will write into 2 or more redo log files in a cyclic order (shown in the below diagram)
When doing this, certain events will trigger out which are listed as below.
LGWR moving from one redo log file to another is called LOG SWITCH. At the time of log switch, following actions will take place
Checkpoint event will occur – this tells that committed data should be made permanent to data files. (Eg: Its just like automatic saving of email when composing in gmail)
CKPT process will update the latest SCN to data file header and control files by taking the info from redo log files.
DBWRn will write the corresponding dirty blocks from write list to data files.
ARCHn process will generate archives (copy of online redo log files) only if database is in archive log mode.
Note: Checkpoint event not only occurs at log switch. It can occur at repeated interval and this is decided by a parameter LOG_CHECKPOINT_INTERVAL (till 8i) and FAST_START_MTTR_TARGET (from 9i)