Oracle Background process
*We can see the oracle background process through in database(V$view).
SQL> show parameter diagno SQL> select SID,PROGRAM from v$session where TYPE='BACKGROUND'; or SQL>select pname, program from V$process;
To findout background processes from OS:
$ ps -ef|grep ora_|grep SID
NOTE: PMON ,SMON,DBWR,LGWR,ARC,CKPT those background process are explained oracle database architecture
Let us we see some of the background processes
1)PSPO - PROCESS SPAWNER
*It is the first background process that will be started when we start the instance and it is responsible for creating and managing other oracle background processes.
2)CJQ - Job Queue Process
*this process is used for Job scheduler includes the main program (the coordinator) and slave programs that the coordinator executes.
*The parameter job_queue_processes controls how many parallel job scheduler jobs can be executed at one time.
3)CQJ0 - Job queue controller process
*this process wakes up periodically and checks the job log. If a job is due, it spawns Jnnnn processes to handle jobs
*The database communicates with the mapping lib files provided by storage vendors through an external non-Oracle Database process that is spawned by a background process called FMON.
*It is responsible for storage managing mapping information
5)LMON-Lock Manager Process
*It manages instances lock that are used to share resources between instances.
*it also handles deadlock detection and remote lock requests
*It used to monitor SGA and performs various manageability background tasks
*from the oracle 10g onwards this background process used to collect statistics for the AWR(Automatic Workload Repository)
7)MMNL-Memory Monitor Light
*This background was introduced in 10g
*It performs frequent and lightweight manageability-related tasks
*Such as session history capture and metrics computation.
*This process will flush the ASH buffer to AWR tables when the buffer is full or a snapshot is taken.
*It was introduced in 10g, Its a part of ASMM
*this process is responsible for ASMM in 10g and AMM in 11g which manages memory allocation to SGA and PGA
*It 'll dynamically adjust the size of The SGA components
*The components of SGA like the large pool, Java Pool, Stream Pool and Shared Pool.It serves as an SGA memory broker.
*OPtional ParallelQuery slavesare started and stopped as needed to participate in parallel query operations.
*This process is related to ASM process that performs rebalancing of disk resources controlled by ASM.
*This process was available in older versions of Oracle to alarm other processes that are suspended while waiting for an event to occur.
*This process is obsolete and has been removed.
*It is responsible for writing flashback logs
*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.
*RECO will either commit or rollback this transaction.
New BackGround Process In oracle 11g
ACMS - Atomic Controlfile to Memory Server
DBRM - Database Resource Manager
DIA0 - Diagnosability process 0
DIAG - Diagnosability process
FBDA - Flashback Data Archiver
*Background process fbda captures data asynchronously
*Every 5 minutes (default), more frequent intervals based on activity.
GTX0 - Global Transaction Process 0
KATE - Konductor (Conductor) of ASM Temporary Errands
MARK - Mark Allocation unit for Resync Koordinator (coordinator)
SMCO - Space Manager
VKTM - Virtual Keeper of TiMe process
W000 - Space Management Worker Processes
ABP - Autotask Background Process
New background processes in Oracle Database 12c
LREG (Listener Registration)
SA (SGA Allocator)