Saturday, January 5, 2013

What are most common background processes in Oracle dB non-RAC?



     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;



No comments:

Post a Comment