0% found this document useful (0 votes)
89 views

You Can See The Oracle Background Processes With This Query

1. The document lists and describes several important Oracle background processes such as ARCH, CKQ, CKPT, DBWR, FMON, LGWR, LMON, and more. 2. It also describes key Real Application Clusters (RAC) background processes including LMON, LMS, LMD, LCKn, and DIAG which are responsible for managing global locks, resources, and cache across instances in a RAC configuration. 3. The background processes work together to perform critical database tasks like writing redo logs, checkpointing, managing jobs, writing dirty buffers to disk, and more. RAC background processes focus on coordinating tasks between instances.

Uploaded by

Abdul Nabi
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
89 views

You Can See The Oracle Background Processes With This Query

1. The document lists and describes several important Oracle background processes such as ARCH, CKQ, CKPT, DBWR, FMON, LGWR, LMON, and more. 2. It also describes key Real Application Clusters (RAC) background processes including LMON, LMS, LMD, LCKn, and DIAG which are responsible for managing global locks, resources, and cache across instances in a RAC configuration. 3. The background processes work together to perform critical database tasks like writing redo logs, checkpointing, managing jobs, writing dirty buffers to disk, and more. RAC background processes focus on coordinating tasks between instances.

Uploaded by

Abdul Nabi
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

You can see the Oracle background processes with this query:

select *
from
   v$session
where
   type ='BACKGROUND';

Here are some of the most important Oracle background processes:

ARCH - (Optional) Archive process writes filled redo logs to the archive log location(s). In
RAC, the various ARCH processes can be utilized to ensure that copies of the archived redo logs
for each instance are available to the other instances in the RAC setup should they be needed for
recovery.

CJQ - Job Queue Process (CJQ) - Used for the job scheduler. The job scheduler includes a 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.

CKPT - Checkpoint process writes checkpoint information to control files and data file headers.

CQJ0 - Job queue controller process wakes up periodically and checks the job log. If a job is
due, it spawns Jnnnn processes to handle jobs.

DBWR - Database Writer or Dirty Buffer Writer process is responsible for writing dirty buffers
from the database block cache to the database data files. Generally, DBWR only writes blocks
back to the data files on commit, or when the cache is full and space has to be made for more
blocks. The possible multiple DBWR processes in RAC must be coordinated through the locking
and global cache processes to ensure efficient processing is accomplished.

FMON - The database communicates with the mapping libraries provided by storage vendors
through an external non-Oracle Database process that is spawned by a background process called
FMON. FMON is responsible for managing the mapping information. When you specify the
FILE_MAPPING initialization parameter for mapping data files to physical devices on a storage
subsystem, then the FMON process is spawned.

LGWR - Log Writer process is responsible for writing the log buffers out to the redo logs. In
RAC, each RAC instance has its own LGWR process that maintains that instance’s thread of
redo logs.

LMON - Lock Manager process

MMON - The Oracle 10g background process to collect statistics for the Automatic Workload
Repository (AWR).

MMNL - This process performs frequent and lightweight manageability-related tasks, such as
session history capture and metrics computation.
MMAN - is used for internal database tasks that manage the automatic shared memory. MMAN
serves as the SGA Memory Broker and coordinates the sizing of the memory components.

PMON - Process Monitor process recovers failed process resources. If MTS (also called Shared
Server Architecture) is being utilized, PMON monitors and restarts any failed dispatcher or
server processes. In RAC, PMON’s role as service registration agent is particularly important.

Pnnn - (Optional) Parallel Query Slaves are started and stopped as needed to participate in
parallel query operations.

RBAL - This process coordinates rebalance activity for disk groups in an Automatic Storage
Management instance.

SMON - System Monitor process recovers after instance failure and monitors temporary
segments and extents. SMON in a non-failed instance can also perform failed instance recovery
for other failed RAC instance.

WMON - The "wakeup" monitor process

Data Guard/Streams/replication Background processes

DMON - The Data Guard Broker process.

SNP - The snapshot process.

MRP - Managed recovery process - For Data Guard, the background process that applies
archived redo log to the standby database.

ORBn - performs the actual rebalance data extent movements in an Automatic Storage
Management instance. There can be many of these at a time, called ORB0, ORB1, and so forth.

OSMB - is present in a database instance using an Automatic Storage Management disk group. It
communicates with the Automatic Storage Management instance.

RFS - Remote File Server process - In Data Guard, the remote file server process on the standby
database receives archived redo logs from the primary database.

QMN - Queue Monitor Process (QMNn) - Used to manage Oracle Streams Advanced Queuing.
 

Oracle Real Application Clusters (RAC) Background Processes


The following are the additional processes spawned for supporting the multi-instance
coordination:

DIAG: Diagnosability Daemon – Monitors the health of the instance and captures the data for
instance process failures.

LCKx - This process manages the global enqueue requests and the cross-instance broadcast.
Workload is automatically shared and balanced when there are multiple Global Cache Service
Processes (LMSx).

LMON - The Global Enqueue Service Monitor (LMON) monitors the entire cluster to manage
the global enqueues and the resources. LMON manages instance and process failures and the
associated recovery for the Global Cache Service (GCS) and Global Enqueue Service (GES). In
particular, LMON handles the part of recovery associated with global resources. LMON-
provided services are also known as cluster group services (CGS)

LMDx - The Global Enqueue Service Daemon (LMD) is the lock agent process that manages
enqueue manager service requests for Global Cache Service enqueues to control access to global
enqueues and resources. The LMD process also handles deadlock detection and remote enqueue
requests. Remote resource requests are the requests originating from another instance.

LMSx - The Global Cache Service Processes (LMSx) are the processes that handle remote
Global Cache Service (GCS) messages. Real Application Clusters software provides for up to 10
Global Cache Service Processes. The number of LMSx varies depending on the amount of
messaging traffic among nodes in the cluster.

The LMSx handles the acquisition interrupt and blocking interrupt requests from the remote
instances for Global Cache Service resources. For cross-instance consistent read requests, the
LMSx will create a consistent read version of the block and send it to the requesting instance.
The LMSx also controls the flow of messages to remote instances.

The LMSn processes handle the blocking interrupts from the remote instance for the Global
Cache Service resources by:

 Managing the resource requests and cross-instance call operations for the shared
resources.
 
 Building a list of invalid lock elements and validating the lock elements during
recovery.
 
 Handling the  global lock deadlock detection and Monitoring for the lock
conversion timeouts
RAC Background Processes:

1. Lock Monitor Processes ( LMON)


2. Lock Monitor Services (LMS)
3. Lock Monitor Daemon Process ( LMD)
4. LCKn ( Lock Process)
5. DIAG (Diagnostic Daemon)

1. Lock Monitor Processes ( LMON)

It Maintains GCS memory structures.


Handles the abnormal termination of processes and instances.
Reconfiguration of locks & resources when an instance joins or leaves the cluster are handled by
LMON ( During reconfiguration LMON generate the trace files)
It responsible for executing dynamic lock remastering every 10 mins ( Only in 10g R2 & later
versions).
LMON Processes manages the global locks & resources.
It monitors all instances in cluster, primary for dictionary cache locks,library cache locks &
deadlocks on deadlock sensitive on enqueue & resources.
LMON also provides cluster group services.
Also called Global enqueue service monitor.

2. Lock Monitor Services (LMS)

LMS is most very active background processes.


Consuming significant amount of CPU time. ( 10g R2 - ensure that LMS process does not
encounter the CPU starvation).
Its primary job is to transport blocks across the nodes for cache-fusion requests.
If there is a consistent-read request, the LMS process rolls back the block, makes a Consistent-
Read image of the block and then ship this block across the HSI (High Speed Interconnect) to the
process requesting from a remote node.
LMS must also check constantly with the LMD background process (or our GES process) to get
the lock requests placed by the LMD process.
Each node have 2 or more LMS processes.

GCS_SERVER_PROCESSES --> no of LMS processes specified in init. ora parameter.


Above parameter value set based on number of cpu's ( MIN(CPU_COUNT/2,2))
10gR2, single CPU instance,only one LMS processes started.
Increasing the parameter value,if global cache activity is very high.
Also called the GCS (Global Cache Services) processes.

Internal View: X$KJMSDP


3. Lock Monitor Daemon Process ( LMDn)

LMD process performs global lock deadlock detection.


Also monitors for lock conversion timeouts.
Also sometimes referred to as the GES (Global Enqueue Service) daemon since its job is to
manage the global enqueue and global resource access.
LMD process also handles deadlock detection and remote enqueue requests.
Remote resource requests are the requests originating from another instance.
Internal View: X$KJMDDP
4. LCKn ( Lock Process)
Manages instance resource requests & cross instance calls for shared resources.
During instance recovery,it builds a list of invalid lock elements and validates lock elements.
5. DIAG (Diagnostic Daemon)
Oracle 10g - this one new background processes ( New enhanced diagnosability framework).
Regularly monitors the health of the instance.
Also checks instance hangs & deadlocks.
It captures the vital diagnostics data for instance & process failures.

You might also like