1. Database Writer Process(DBwn)
-
Writes
the dirty(modified) buffers from buffer cache to the disk
-
The
DB_WRITER_PROCESSES initialization parameter specifies the number of DBWn
processes
-
Additional
processes DBW0 to DBW9 or DBWa to DBWz can be configured based number of
processors and our requirement to improve the Write process
-
Setting
up this parameter is not useful with servers having uniprocessors
-
Usually,
this parameter is maintained by Oracle automatically based on number of
processors and processor groups unless specified by the DBA.
-
This
writer process writes buffers to disk and advance the check point (CKPT).
2. Log writer Process(LGWR)
-
This
is responsible for redo log management to write the redo buffers to the redo
log file in the disk.
-
Occurs
when a user process commits a transaction
-
Occurs
when the redo buffer is one-third full
-
Occurs
every 3 seconds
-
Just
before DBWn process writes buffers to the disk, if necessary
-
Useful
to recover the dB from unexpected issues
3. Checkpoint Process(CKPT)
-
A
CHECKPOINT is a data structure that defines the system change number (SCN) in
the Redo thread of a database.
-
A
CKPTs are recorded in control file and all data file headers
4. System Monitor Processes(SMON)
-
SMON
is used to recover the instance to the point when it started last time.
-
It
is also used to clean the temp segments that are not in use
-
It
also checks each process very often that if the process is needed or not.
5. Process Monitor Process(PMON)
-
PMON
is mainly used to recover the process when it fails
-
It
also releases the resources assigned to the process
-
It
cleans up the buffer cache
-
It
monitors Idle sessions for time outs
-
It
registers the listeners to the dB services
6. Recover Process(RECO)
-
RECO
is a BG process used in the configuration of distributed databases configuration
and is responsible to resolve the issues in in-doubt transactions.
-
It
auto connects the databases involved in the distributed configuration and in
case if it failed to connect the dB and it tries to connect with an intervals exponentially.
7. Job queue coordinator(CJQ0)
-
It
is used to run the user created jobs and the jobs are run automatically based
the schedule they were created and the jobs need to be run are selected from
the JOB$ table ordered by job runtime
8. Job slave processor(Jnnn)
-
The
coordinator process dynamically spawns job queue slave processes (Jnnn) to run
the jobs
9. Archive processes(ARCn)
-
Archive
process is to copy the redo log files to a standby storage after log switch is
happened.
-
It
exists only when the dB is in ARCHIVELOG mode and the dB is enabled for
Archiving
-
We
could increase the number of processes to archive in case of Bulk loads and so.
It is flexible process
10. Queue Monitor Process(QMNn)
-
Used
to manage Oracle streams advanced queuing
In addition, the other more BG processes can be seen in
V$BGPROCESS view.
Select * from V$SESSION where type ='BACKGROUND';
Or
Select * from V$BGPROCESS;