Whenever the Oracle is stated then there will be some processes also started which are mandatory to the keep Oracle up and running. I'm going to talk about the most common and important process.
- Database Writer Process
- Log Writer Process
- Checkpoint Process
- System Monitor Process
- Process Monitor Process
- Archiver Process
- Recovery Process
This process is responsible for write the data from Data buffer cache to Data files.
This process is responsible for write redo logs from Redo buffer cache to Redo log files.
Some intersting points
-
Once the redo buffer write to the disk then the next redo buffer will for previous commits acknowledement.
-
All other waiting redo buffers will write to the disk as a group commit. So the I/O will reduce.
-
DBWR
will write the data files after the Redo logs written to the Disk.
Checkpoints will occur when the transaction got committed, Once the transaction is committed then this process will update the header of the data files to record the details of the checkpoint.
This process will start when the Oracle is started. It is responsible for recovery kind of things. During startup of the database, it will go and check if any uncommitted transactions and rollback them.
Whenever the user's session got killed or abnormally terminated then this process is responsible for clean up that user's session data, temp data and etc.
There is no use for keeping the redo logs for so long time, so this process will help to archive the Redo logs to archive log files.
This process is intended for recovery of distributed databases. The distributed transaction recovery process finds pending distributed transactions and resolves them. All in-doubt transactions are recovered by this process in the distributed database setup. RECO will connect to the remote database to resolve pending transactions.