Oracle Database Background Processes Version 23c |
---|
General Information | |||||
Library Note |
|
||||
Note | Unlike most of the library pages which are full of live demos this page is intended as a repository into which I will collect,
over time, the best advice I find with respect to various Oracle processes. Some of the entries, below, are placeholders for when I find things of more interest. If you can find a link to something you think worth sharing with the community please send it in. The basic template I am using to create this page is this Oracle Doc. ~ Thank you. |
||||
Dependencies |
|
||||
To find active processes in your instance that may be on this page | SELECT inst_id, program |
||||
ABMR | |||||
Auto BMR Background | Coordinates execution of tasks such as filtering duplicate block media recovery requests and flood control | ||||
TBD | |||||
ACFS | |||||
ASM Cluster File System CSS | Delivers CSS membership changes to the Oracle cluster file system. These membership changes are required for the file system to maintain file system consistency within the cluster. | ||||
TBD | |||||
ACMS | |||||
Atomic Control file to Memory Service | Coordinates consistent control file resource updates to a with its SGA counterpart on all instances in a RAC cluster. Works with a coordinating caller to ensure that an operation is executed on every cluster instance despite possible failures. ACMS is the process in which a distributed operation is called. As a result, this process can exhibit a variety of behaviors. In general, ACMS is limited to small, non-blocking state changes for a limited set of cross-instance operations. | ||||
Real Application Clusters (RAC) |
|||||
AMBn |
|||||
ASM Rebalance Process | ASMB slave processes that connect an Oracle Database instance to an ASM instance | ||||
TBD | |||||
APnn |
|||||
Logical Standby / Streams Apply Process Coordinator | Obtains transactions from the Streams reader server and passes them to the Streams apply servers | ||||
TBD | |||||
AQPC | |||||
Advanced Queuing Process Coordinator | AQPC is responsible for performing administrative tasks for AQ Master Class Processes including commands like starting, stopping, and other administrative tasks. This process is automatically started on instance startup. | ||||
TBD23 | |||||
ARBn |
|||||
ASM Rebalance Process | Rebalances data extents within an ASM disk group. | ||||
TBD | |||||
ARCn |
|||||
Archiver | Creates archive copies of redo log files when they are full or an online redo log switch occurs. ARC n processes exist only when the database is in ARCHIVELOG mode and automatic archiving is enabled. LGWR cannot reuse/overwrite an online redo log group until it has been archived.The database can start multiple archiver processes as needed to ensure that the archiving of filled online redo logs does not fall behind. Possible processes include ARC0-ARC9 and ARCa-ARCt. The LOG_ARCHIVE_MAX_PROCESSES initialization parameter specifies the number of ARC n processes that the database initially invokes: Not the maximum number of possible processes. |
||||
Archivelogs | |||||
ARSn |
|||||
ASM Recovery Slave Process | The ASM RBAL background process coordinates and spawns one or more of these slave processes to recover aborted ASM transactional operations. These processes run only in the Oracle ASM instance. | ||||
TBD | |||||
ASMB | |||||
ASM Background | Communicates with the ASM instance, managing storage and providing statistics. ASMB runs in ASM instances when the ASMCMD cp command runs or when the database instance first starts if the server parameter file is stored in ASM. ASMB also runs with Oracle Cluster Registry on ASM. ASMB stays open as long as ASM is open and available. | ||||
TBD | |||||
ASnn |
|||||
Logical Standby / Streams Apply Process Reader Server or Apply Server | With Streams, when the reader server finishes computing dependencies between LCRs and assembling transactions, it returns the assembled transactions to the coordinator process:
Query V$STREAMS_APPLY_READER for information about the reader server background process. An apply server receives the transactions from the coordinator background process, and either applies database changes in LCRs or sends LCRs or messages to apply handlers. Apply servers can also enqueue a queue. If an apply server encounters an error, then it then tries to resolve the error with a user-specified conflict handler or error handler. If an apply server cannot resolve an error, then it rolls back the transaction and places the entire transaction, including all of its messages, in the error queue. When an apply server commits a completed transaction, this transaction has been applied. When an apply server places a transaction in the error queue and commits, this transaction also has been applied. Query V$STREAMS_APPLY_SERVER for information about the apply server background process. The coordinator process name is AS nn , where nn can include both letters and numbers. |
||||
Streams | |||||
Bnnn |
|||||
ASM Blocking Slave for GMON | Performs actions that require waiting for resources on behalf of GMON. A Bnnn slave is spawned when an ASM disk is taken offline.
The Off-line timer processing and disk drop are performed in this slave. Up to five process (B000 to B004) can exist depending on the load. |
||||
TBD | |||||
BGnn (new 23c) ![]() |
|||||
Undocumented | TBD | ||||
TBD | |||||
BMRn |
|||||
Automatic Block Media Recovery Slave Pool | When a process submits a block media recovery request to ABMR, it dynamically spawns slave processes (BMRn ) to perform the recovery.
BMRn processes fetch blocks from a real-time readable standby database. ABMR and BMRn terminate if idle for a long time. |
||||
Data Guard | |||||
BWnn |
|||||
Database Writer Process | Writes modified blocks from the database buffer cache to the data files. | ||||
Data Guard | |||||
CJQ0 |
|||||
23c Job Queue Coordinator | Selects jobs that need to be run from the data dictionary and spawns job queue slave processes (Jnnn ) to run the jobs. This process is automatically started and stopped as needed by the Scheduler.
The JOB_QUEUE_PROCESSES initialization parameter specifies the maximum number of processes that can be created for job executions. CJQ0 starts only as many job queue processes as required by the number of jobs to run and available resources. |
||||
DBMS_JOB | |||||
CKPT | |||||
Checkpointer | At specific times CKPT starts a checkpoint request by messaging DBWn to begin writing dirty buffers. On completion of individual checkpoint requests, CKPT updates data file headers and control files to record the most recent checkpoint. | ||||
TBD | |||||
CLnn |
|||||
Cleanup Slave Process | Cleanup slaves assist in the cleanup of dead processes and killed sessions. The number of slaves will be proportional to the amount of cleanup work to be done and the current efficiency of cleanup. | ||||
TBD | |||||
CLG | |||||
Persistent Cluster Flash Cache Background Process | For Oracle Data Appliance only, in the event of an instance crash, the surviving instance will recover the dead instance's database flash cache. The CLG process will perform actions related to scanning the dead instance's database flash cache and claim flash blocks mastered by the dead instance | ||||
TBD | |||||
CLMN | |||||
Cleanup Main Process | Periodically performs cleanup of all the following: dead processes, killed sessions, transactions, network connections, idle sessions, detached transactions, and detached network connections that have exceeded their idle timeout. | ||||
TBD | |||||
CPnn |
|||||
Streams Capture | Captures database changes from the redo log with LogMiner utilizing one reader server that reads the redo log and divides it into regions, one or more preparer servers that scan the redo log,
and one builder server that merges redo records from the preparer servers. Each reader server, preparer server, and builder server is a separate process. Query the V$STREAMS_CAPTURE view for information about this background process. The capture process name is CP nn , where nn can include letters and numbers. The underlying LogMiner process name is MSnn , where nn can include letters and numbers. |
||||
DBMS_LOGMNR | |||||
CRnn |
|||||
LMS CR Slave Process | Offloads the work from LMS so that blocks that require lots of UNDO to be applied do not block the LMS. Such requests are passed on to the slave so that the LMS is not stalled. | ||||
Streams | |||||
CSnn |
|||||
Streams Propagation Sender | Sends LCRs to a propagation receiver. In an Oracle Streams combined capture and apply optimization, the propagation sender sends LCRs directly to the propagation receiver to improve performance. The propagation receiver passes the LCRs to an apply process. Query V$PROPAGATION_SENDER for information about a propagation sender. | ||||
Streams | |||||
CTWR | |||||
Block Change Tracking Writer | CTWR tracks changed blocks as redo is generated at a primary database and as redo is applied at a standby database. The process is slightly different depending on the type of database. Buffer size can be configured with a number of undocumented parameter listed here in the Undocumented Parameters section. | ||||
Block Change Tracking | |||||
CXnn |
|||||
Streams Propagation Sender Process | Sends LCRs to an propagation receiver. The propagation sender process name is CXnn, where nn can include letters and numbers. In an Oracle Streams combined capture and apply optimization, the propagation sender sends LCRs directly to the propagation receiver to improve performance. The propagation receiver passes the LCRs to an apply process. Query V$PROPAGATION_SENDER for information about a propagation sender. | ||||
DBMS_RESOURCE_MANAGER | |||||
Dnnn |
|||||
23c Dispatcher | Performs network communication in the shared server architecture. In the shared server architecture, clients connect to a dispatcher process, which creates a virtual circuit for each connection.
When the client sends data to the server, the dispatcher receives the data into the virtual circuit and places the active circuit on the common queue to be picked up by an idle shared server.
The shared server then reads the data from the virtual circuit and performs the database work necessary to complete the request.
When the shared server must send data to the client, the server writes the data back into the virtual circuit and the dispatcher sends the data to the client.
After the shared server completes the client request, the server releases the virtual circuit back to the dispatcher and is free to handle other clients. Several initialization parameters relate to shared servers. The principal parameters are: DISPATCHERS, SHARED_SERVERS, MAX_SHARED_SERVERS, LOCAL_LISTENER, REMOTE_LISTENER. |
||||
TBD | |||||
DBRM | |||||
DataBase Resource Manager | Only active if a resource plan is enabled: Sets resource plans and performs other tasks related to the Database Resource Manager. | ||||
DBMS_RESOURCE_MANAGER | |||||
DBWn |
|||||
DataBase Writer | Writes modified blocks from the database buffer cache to the data files on disk.DBWn also writes checkpoints, manages file open synchronization, and the logging of Block Written records.DBW n performs multiblockwrites when possible to improve efficiency but because it's writes are scattered throughout the disk they are usually slower than the sequential writes performed by LGWR.
The number of blocks written in a multiblock write varies by operating system.The DB_WRITER_PROCESSES initialization parameter specifies the number of DBWn processes (DBW0-DBW9 and DBWa-DBWz). The database selects an appropriate default setting for this parameter or adjusts a user-specified setting based on the number of CPUs and processor groups. |
||||
Learn How To Obliterate Processor Caches: Configure Lots and Lots of DBWR Processes. Part 1. Over-configuring DBWR Processes. Part II Over-configuring DBWR Processes. Part III Over-configuring DBWR Processes. Part IV |
|||||
DIAn |
|||||
23c Hang detection DIAgnostic process | Detects and aids in resolving hangs and deadlocks | ||||
TBD | |||||
DIAG | |||||
23c DIAGnostic Capture | Performs diagnostic dumps requested by other processes and dumps triggered by process or instance termination. In Oracle RAC, DIAG performs global diagnostic dumps requested by remote instances. | ||||
Automatic Diagnostic Repository (ADR) | |||||
DMnn |
|||||
DataPump | Coordinates the Data Pump job tasks performed by Data Pump worker processes and handles client interactions. The Data Pump master (control) process is started during job creation and coordinates all tasks performed by the Data Pump job. It handles all client interactions and communication, establishes all job contexts, and coordinates all worker process activities on behalf of the job. | ||||
DataPump | |||||
DMON | |||||
Data Guard Broker MONitor | Manages and monitors a database that is part of a Data Guard broker configuration. When you start the Data Guard broker, a DMON process is created. DMON runs for every database instance that is managed by the broker.
DMON interacts with the local database and the DMON processes of the other databases to perform the requested function.
DMON also monitors the health of the broker configuration and ensures that every database has a consistent description of the configuration. DMON maintains profiles about all database objects in the broker configuration in a binary configuration file. A copy of this file is maintained by the DMON process for each of the databases that belong to the broker configuration. The process is created when the DG_BROKER_START initialization parameter is set to true. |
||||
Data Guard | |||||
DSKM | |||||
Dismon Slave | Conduit between the database, ASM instances, and the Master Diskmon daemon to communicate information to Exadata storage. This process is active only if Exadata Storage is used. DSKM performs operations related to Exadata I/O fencing and Exadata cell failure handling. | ||||
TBD | |||||
DWnn |
|||||
DataPump Worker | Responsible for performing tasks assigned by the Data Pump master process such as the loading and unloading of metadata and data. | ||||
DataPump | |||||
Ennn |
|||||
Emon Slave | The database event management and notification load is distributed among the EMON slave processes. These processes work on the system notifications in parallel, offering a capability to process a larger volume of notifications, a faster response time, and a lower shared memory use for staging notifications. | ||||
Real Application Clusters | |||||
EMNC | |||||
Emon Coordinator | Coordinates event management and notification activity in the database, including Streams Event Notifications, Continuous Query Notifications, and Fast Application Notifications. | ||||
Real Application Clusters | |||||
FBDA | |||||
FlashBack Data Archiver | This technology is part utilized by Flashback Archive marketed by Oracle as "Total Recall." When a transaction that modifies a tracked table commits, FBDA stores the pre-image of the rows in the archive. FDBA maintains metadata on the current rows and tracks how much data has been archived. FBDA is also responsible for automatically managing the flashback data archive for space, organization (partitioning tablespaces), and retention. FBDA also keeps track of how far the archiving of tracked transactions has progressed. | ||||
Flashback Archive | |||||
FDnn |
|||||
Oracle ASM Stale FD Cleanup Slave Process | Cleans up Oracle ASM stale file descriptors on foreground processes. | ||||
TBD | |||||
FENC | |||||
Fence Monitor Process | Processes fence requests for RDBMS instances which are using Oracle ASM instances. | ||||
TBD | |||||
FMON | |||||
File Mapping Monitor | The DBMS_STORAGE_MAP package enables control of the mapping operations.
When instructed by the user, FMON builds mapping information and stores it in the SGA, refreshes the information when a change occurs, saves the information to the data dictionary, and restores it to the SGA at instance startup. FMON is started by the database whenever the FILE_MAPPING initialization parameter is set to true. |
||||
DBMS_STORAGE_MAP | |||||
FSFP | |||||
Data Guard Broker Fast Start Failover Pinger | This process is created when Fast Start Failover is enabled. | ||||
Data Guard | |||||
GCRn |
|||||
23c Global Conflict Resolution Slave Process | Transient slaves started and stopped as required by LMHB to perform synchronous or resource intensive tasks | ||||
TBD | |||||
GCWn (new 23c) ![]() |
|||||
Undocumented | TBD | ||||
TBD | |||||
GENn |
|||||
General Task Execution Monitor | Performs required tasks including SQL and DML | ||||
TBD | |||||
GMON | |||||
ASM Disk Group Monitor | Monitors all disk groups mounted in an ASM instance and is responsible for maintaining consistent disk membership and status information.
Membership changes result from adding and dropping disks, whereas disk status changes result from taking disks offline or bringing them online. Calls Bnnn slaves to perform the work. |
||||
TBD | |||||
GTXn |
|||||
Global Transaction Supports global XA transactions with RAC |
These processes help maintain the global information about XA global transactions throughout the cluster.
They support global transaction two phase commit anywhere in the cluster so that an Oracle RAC database behaves as a single system to externally coordinated distributed transactions. The GLOBAL_TXN_PROCESSES initialization parameter specifies the number of GTXn processes, where n is 0-9 or a-j. The database automatically tunes the number of these processes based on the workload of XA global transactions. You can disable these processes by setting the parameter to 0. If you try to run XA global transactions with these process disabled, an error is returned. |
||||
Real Application Clusters | |||||
Innn |
|||||
Disk and Tape I/O Slave Process | Serves as an I/O slave process spawned on behalf of DBWR, LGWR, or an RMAN backup session. | ||||
TBD | |||||
IMCO | |||||
In-Memory Coordinator | Initiates background population and repopulation of in-memory enabled objects. | ||||
In-Memory Database | |||||
IMR0 | |||||
Instance Membership Recovery Slave Process | Performs synchronous tasks on behalf of LMON. | ||||
TBD | |||||
INSV | |||||
Data Guard Broker Instance Slave Process | Performs Data Guard broker communication among instances in an Oracle RAC environment | ||||
Data Guard | |||||
IPC0 | |||||
IPC Service Background Process | Common background server for basic messaging and RDMA primitives based on IPC (Inter-process communication) methods. | ||||
TBD | |||||
J00n |
|||||
Job Queue Slave Process | Executes jobs assigned by the job coordinator. | ||||
TBD | |||||
JPn |
|||||
Java Patching Slave Process | Patches and updates the Java in the database classes. | ||||
TBD | |||||
Lnnn |
|||||
Pooled Server Manages client requests in database resident connection pooling |
In Database Resident Connection Pooling, clients connect to a connection broker process. When a connection becomes active, the connection broker hands off the connection to a compatible pooled server process. The pooled server process performs network communication directly on the client connection and processes requests until the client releases the server. After being released, the connection is returned to the broker for monitoring, leaving the server free to handle other clients. | ||||
DBMS_CONNECTION_POOL | |||||
LCKn |
|||||
Lock Process | Manages global enqueue requests and cross-instance broadcasts. Possible processes are LCK0 and LCK1 . |
||||
TBD | |||||
LDDn |
|||||
Global Enqueue Service Daemon Helper Slave | Helps the LMDn processes with various tasks. There can be up to 36 of these slave processes (LDD0 -LDDz ). |
||||
TBD | |||||
LGnn |
|||||
Log Writer Worker | On multiprocessor systems, LGWR creates worker processes to improve the performance of writing to the redo log. LGWR workers are not used when there is a SYNC standby destination.
Possible processes include LG00 -LG99 . |
||||
TBD | |||||
LGWR | |||||
Log Writer Process | Redo log entries are generated in the redo log buffer of the system global area (SGA). LGWR writes the redo log entries sequentially into a redo log file. If the database has a multiplexed redo log, then LGWR writes the redo log entries to the current member of each redo log group. | ||||
TBD | |||||
LMDn |
|||||
Global Enqueue Service Daemon Process | Manages incoming remote resource requests from other instances. | ||||
TBD | |||||
LMFC | |||||
Lock Manager Flash Cache Process | For Oracle Database Appliance only, performs actions related to recovery of a dead instance’s database flash cache. | ||||
ODA | |||||
LMHB | |||||
Global Cache/ Enqueue Service Heartbeat Monitor | Monitor the heartbeat of several processes including CKPT, DIAn , LCKn , LGnn , LGWR, LMDn , LMON, LMSn ,
and RMSn to ensure they are running normally without blocking or spinning. |
||||
TBD | |||||
LMON | |||||
Global Enqueue Service Monitor Process | Monitors an Oracle RAC cluster to manage global resources by maintaining an instance membership within Oracle RAC. The process detects instance transitions and performs reconfiguration of GES and GCS resources. | ||||
TBD | |||||
LMSn |
|||||
Global Cache Service Resource control with RAC instances |
LMS, where n is 0-9 or a-z, maintains a lock database for Global Cache Service (GCS) and buffer cache resources. This process receives, processes, and sends GCS requests, block transfers, and other GCS-related messages. | ||||
Real Application Clusters | |||||
LREG | |||||
Listener Registration Process | Registers the instance with the listeners. by notifying the listeners about instances, services, handlers, and endpoints. | ||||
TBD | |||||
LSP0 | |||||
Logical Standby Coordinator | LSP0 is the initial process created upon startup of Data Guard SQL Apply. In addition to managing LogMiner and Apply processes, LSP0 is responsible for maintaining inter-transaction dependencies and appropriately scheduling transactions with applier processes. LSP0 is also responsible for detecting and enabling runtime parameter changes for the SQL Apply product as a whole. | ||||
Data Guard | |||||
LSP1 | |||||
Logical Standby Dictionary Build | The LSP1 process is spawned on a logical standby database that is intended to become the new primary database. A logical standby database becomes a primary database by means of switchover or failover. The dictionary is necessary for logical standby databases to interpret the redo of the new primary database. | ||||
Data Guard | |||||
LSP2 | |||||
Logical Standby Set Guard Determines which objects will be protected |
The LSP2 process is created as needed during startup of SQL Apply to update the list of objects that are protected by the database guard. | ||||
Data Guard | |||||
Mnnn |
|||||
MMON Slave | Performs manageability tasks dispatched to them by MMON | ||||
DBMS_ADDM | |||||
MARK | |||||
Mark AU for Resynchronization Coordinator. Marks ASM allocation units as stale | MARK essentially tracks which extents require resynchronization for offline disks. This process runs in the database instance and is started when the database instance first begins using the ASM instance. If required, MARK can also be started on demand when disks go offline in the ASM redundancy disk group. | ||||
TBD | |||||
MMAN | |||||
Memory Manager | Performs instance memory component resizing | ||||
TBD | |||||
MMNL | |||||
Manageability Monitor Light | Performs multiple manageability related tasks including session history capture and metrics computation | ||||
TBD | |||||
MMON | |||||
Manageability Monitor | Performs multiple manageability tasks including taking AWR snapshots and ADDM analysis | ||||
DBMS_ADDM | |||||
MRP0 | |||||
Physical Data Guard Managed Standby Recovery | Detached Recovery Server Process spawned at the start of redo apply on a Data Guard physical standby. MRP0 handles the extraction and coordinates the application of redo on the physical standby |
||||
Data Guard | |||||
MSnn |
|||||
Log Miner Worker | Multiple MSnn processes can exists, where n is 0-9 or a-Z. A minimum of three MSnn processes work as a group to provide transactions to a LogMiner client, for example, a logical standby database.
There may be more than one such group, for example, Downstream Capture sessions. |
||||
DBMS_LOGMNR | |||||
MZnn |
|||||
Dedicated MMON Slave | Dedicated process for a single MMON slave action. Performs manageability tasks dispatched by MMON, which include taking Automatic Workload Repository snapshots and performing Automatic Database Diagnostic Monitor analysis. | ||||
DBMS_ADDM | |||||
Nnnn |
|||||
Connection Broker | In Database Resident Connection Pooling, clients connect to a connection broker process. When a connection becomes active, the connection broker hands off the connection to a compatible pooled server process. The pooled server process performs network communication directly on the client connection and processes requests until the client releases the server. After being released, the connection is returned to the broker for monitoring, leaving the server free to handle other clients. | ||||
DBMS_CONNECTION_POOL | |||||
NFSn |
|||||
Direct NFS Dispatcher IO Slave Process | Performs direct NFS I/O for database processes. | ||||
TBD | |||||
NSSn |
|||||
Redo Transport NSS1 SYNC transport LGWR Slave |
Acts as a slave for LGWR when SYNC transport is configured for a remote standby destination | ||||
Data Guard | |||||
NSVn |
|||||
Data Guard Broker NetSlave Broker network communications |
Created when a Data Guard broker configuration is enabled. There can be as many NSVn processes (where n is 0- 9 and A-U) created as there are databases in the Data Guard broker configuration. | ||||
Data Guard | |||||
Onnn |
|||||
ASM Connection Pool | Slave processes spawned on demand to communicate with an ASM instance | ||||
TBD | |||||
OCFn |
|||||
ASM CF Connection Pool | Maintains a connection to the ASM instance for metadata related operations. | ||||
TBD | |||||
OFnn |
|||||
Oracle File Server Background Process Thread | Serves file system requests submitted to an Oracle instance. | ||||
TBD | |||||
OFSD | |||||
Oracle File Server Background Process | Serves file system requests submitted to an Oracle instance. Listens for new file system requests, both management (like mount, unmount, and export) and I/O requests, and executes them using Oracle threads. |
||||
TBD | |||||
P00n |
|||||
Parallel Query Slave | Parallel Query has two components: a foreground process that acts as query coordinator and a set of parallel slaves (Pnnn) that are background processes.
These background processes are spawned or reused during the start of a parallel statement. They receive and carry out units of work sent from the query coordinator. The maximum number of processes is controlled by the PARALLEL_MAX_SERVERS initialization parameter. Slave processes are numbered from 0 to the value of the initialization parameter PARALLEL_MAX_SERVERS. If the query is a GV$ query, then these background processes are numbered backward, beginning with PZ99, then PZ98, etc. |
||||
TBD | |||||
PING | |||||
Interconnect Latency Measurement | Every few seconds, the process in one instance sends messages to each cluster instance. The message is received by PING on the target instance and the round trip time measured and collected | ||||
Real Application Clusters | |||||
PMAN | |||||
Process Manager | Manages several background processes including shared servers, pooled servers, and job queue processes. PMAN monitors, spawns, and stops the following as needed: • dispatcher and shared server processes • connection broker and pooled server processes for database resident connection pools • job queue processes • restartable background processes |
||||
TBD | |||||
PMON | |||||
Process Monitor | PMON periodically performs cleanup of all the following:
|
||||
TBD | |||||
PRnn |
|||||
Parallel Recovery | A slave for the coordinator process performing parallel media recovery carrying out tasks assigned by the coordinator. The default number of these processes is based on number of CPUs. Parallel recovery sessions can be found in the gv$px_session dynamic performance view. | ||||
Tuning | |||||
PSP0 | |||||
Process Spawner | After startup spawns background processes | ||||
TBD | |||||
PXMN | |||||
Parallel Execution Monitor | Spawns parallel server processes on local instances in an Oracle RAC environment for Query Coordinator in remote instances. | ||||
TBD | |||||
Q00n |
|||||
AQ Coordinator (QMNC) Slave | Slave processes initiated by QMNC | ||||
DBMS_AQADM | |||||
QMNC | |||||
AQ Coordinator | Responsible for facilitating various background activities required by AQ and Streams such as management of messages, non-persistent queues, and resource cleanup.
Also dynamically spawns Qnnn slave processes as required. Note that if the AQ_TM_PROCESSES initialization parameter is set to 0, this process will not start. The database writes the following message to the alert log: "WARNING: AQ_TM_PROCESSES is set to 0. System might be adversely affected." |
||||
DBMS_AQADM | |||||
QMnn |
|||||
AQ Master Class Process | Monitors AQ QMNC is the non-sharded queue master process responsible for facilitating various background activities required by AQ and Oracle Streams: time management of messages, management of nonpersistent queues, cleanup of resources, and so on. QMNC dynamically spawns Qnnn processes as needed for performing these tasks. Note that if the AQ_TM_PROCESSES initialization parameter is set to 0, this process will not start. The database writes the following message to the alert log: WARNING: AQ_TM_PROCESSES is set to 0. System might be diversely affected. | ||||
Advanced Queueing | |||||
Rnnn |
|||||
ASM Block Remap Slave | A database instance reading from an Oracle ASM disk group can encounter an error during a read. If possible, Oracle ASM asynchronously schedules a Rnnn slave process to remap this bad block from a mirror copy. | ||||
TBD | |||||
RBAL | |||||
ASM Rebalance Master | In an ASM instance, coordinates disk group rebalance | ||||
TBD | |||||
RCBG | |||||
Result Cache BackGround | Processes global result cache invalidations and other messaging generated by server processes attached to other instances in a RAC cluster. | ||||
DBMS_RESULT_CACHE | |||||
RECO | |||||
Recoverer | Uses the information in the pending transaction table to finalize the status of in-doubt transactions. At timed intervals, the local RECO process attempts to connect to remote databases and commit or rollback of the local portion of any pending distributed transactions. All transactions resolved by RECO are removed from the pending transaction table. | ||||
TBD | |||||
RLnn |
|||||
Reset Logs Process | Clear online redo logs when performing open resetlogs and converting to physical standby. Possible processes are RL00 through RL31. | ||||
Open Reset Logs | |||||
RM | |||||
Rat Masking Slave Process | Extracts and masks bind values from workloads like SQL tuning sets and DB Replay capture files. | ||||
Real Application Testing | |||||
RMON | |||||
Rolling Migration Monitor Process | Manages the rolling migration procedure for an Oracle ASM cluster | ||||
DBMS_ROLLING | |||||
RMSn |
|||||
RAC Management | Performs a variety of tasks, including creating resources related to Oracle RAC when new instances are added to a cluster | ||||
Real Application Clusters | |||||
RMVn |
|||||
Global Cache Service Remaster Process | Performs remastering for cluster reconfiguration and dynamic remastering. | ||||
Real Application Clusters Remastering | |||||
RPOP | |||||
Instant Recovery Repopulation Daemon | The RPOP process is responsible for re-creating and repopulating data files from snapshots files. It works with the instant recovery feature to ensure immediate data file access. The local instance has immediate access to the remote snapshot file's data, while repopulation of the recovered primary data files happens concurrently. Any changes in the data are managed between the instance's DBW processes and RPOP to ensure the latest copy of the data is returned to the user. | ||||
TBD | |||||
RPnn |
|||||
Workload Capture | These are worker processes spawned by calling DBMS_WORKLOAD_REPLAY.PROCESS_CAPTURE. RPnn processes execute in parallel and each handles a set of assigned files.The number of worker processes is controlled by the DBMS_WORKLOAD_REPLAY.PROCESS_CAPTURE parallel_level parameter which, by default, is NULL. Then, the number of worker processes is equal to the value in v$parameter for 'cpu_count.' When parallel_level is set to 1 no worker processes are spawned. |
||||
DBMS_WORKLOAD_REPLAY | |||||
RSM0 | |||||
Data Guard Broker Worker Monitoring for DMON | Performs monitoring and management tasks related to Data Guard on behalf of DMON. The process is created when the Data Guard broker configuration is enabled. | ||||
Data Guard | |||||
RSMN | |||||
Remote Slave Monitoring (RAC) | Manages the creation of slave processes that perform tasks on behalf of a coordinating process running in another cluster instance providing communication with their coordinators and peers | ||||
Real Application Clusters | |||||
RVWR | |||||
Recovery Writer | Creates flashback logs and writes Flashback Database data from the flashback buffer in the SGA to the flashback logs. Also performs some tasks for flashback log automatic management | ||||
Flashback Database | |||||
Snnn |
|||||
Shared Server (formerly MTS) | In the shared server architecture, clients connect to a dispatcher process, which creates a virtual circuit for each connection.
When the client sends data to the server, the dispatcher receives the data into the virtual circuit and places the active circuit on the common queue to be picked up by an idle shared server.
The shared server then reads the data from the virtual circuit and performs the database work necessary to complete the request.
When the shared server must send data to the client, the server writes the data back into the virtual circuit and the dispatcher sends the data to the client.
After the shared server completes the client request, the server releases the virtual circuit back to the dispatcher and is free to handle other clients. Several initialization parameters relate to shared servers. The principal parameters are: DISPATCHERS, SHARED_SERVERS, MAX_SHARED_SERVERS, LOCAL_LISTENER, REMOTE_LISTENER. |
||||
TBD | |||||
SAnn |
|||||
SGA Allocator | A small fraction of SGA is allocated during instance startup. This process allocates the rest of SGA in small chunks. The process exits upon completion of SGA allocation. The possible processes are SA00 - SAzz. | ||||
Memory | |||||
SCCN | |||||
ASM Disk Scrubbing Slave Check Process | Acts as a slave process for SCRB and performs the checking operations. The possible processes are SCC0-SCC9. | ||||
TBD | |||||
SCMN (new 23c)
![]() |
|||||
Undocumented | TBD | ||||
TBD | |||||
SCM0 | |||||
DLM Statistics Collection and Management Slave | Collects and manages statistics related to global enqueue service (GES) and global cache service (GCS) | ||||
TBD | |||||
SCRB | |||||
ASM Disk Scrubbing Master Process | Coordinates Oracle ASM disk scrubbing operations. | ||||
TBD | |||||
SCRn |
|||||
ASM Disk Scrubbing Slave Repair Process | Acts as a slave process for SCRB and performs the repairing operations. The possible processes are SCR0-SCR9 | ||||
TBD | |||||
SCVn |
|||||
Performs Oracle ASM disk scrubbing repair operations | Performs Oracle ASM disk scrubbing verify operation. | ||||
TBD | |||||
SMCO | |||||
Space Monitor Coordinator | Coordinates the execution of space management tasks, including proactive space allocation and reclamation.
Dynamically spawns Wnnn slave processes to perform the tasks both of which are used for in-memory column store maintenance. |
||||
TBD | |||||
SMON | |||||
System Monitor | Performs critical tasks such as instance recovery and dead transaction recovery, and maintenance tasks such as temporary space reclamation, data dictionary cleanup, and undo tablespace management. In more detail:
|
||||
TBD | |||||
SP | |||||
SPA (SQL Performance Analyzer) Slave | Analyzes single SQL statements sent from SQL Performance Analyzer (SPA) | ||||
TBD | |||||
SVCB | |||||
Service Background Process | Part of RAC: Provides database service run-time load balancing and topology information to clients. Every 30 seconds the process processes and publishes run-time load-balancing information and keeps the topology information current. This process is started only if Oracle Real Application Clusters (Oracle RAC) is enabled. |
||||
TBD | |||||
TEMn |
|||||
ASM Disk Test Error Emulation | I/O errors can be emulated on ASM disk I/O through named events. The scope can be the process, instance, or cluster. Optionally, a set of AUs can be chosen for error emulation. | ||||
TBD | |||||
TMON (new 23c)
![]() |
|||||
Undocumented | TBD | ||||
TBD | |||||
TTnn |
|||||
23c Redo Transport Slave Process | Ships redo from current online and standby redo logs to remote standby destinations configured for ASYNC transport. | ||||
TBD | |||||
Unnn |
|||||
Container Process for Threads | Database container operating system processes where database backgrounds processes like SMON, CJQ0, and database foreground processes run. The V$PROCESS view lists database processes running in these container processes.
These container processes are created only when the THREADED_EXECUTION initialization parameter is set to TRUE. The number of these processes vary depending on the active database processes.
On a host with multiple NUMA nodes, there will be at least one Unnn process per NUMA node. These processes are fatal processes, if any of them is killed, it will result in instance termination. These processes exit when the instance is shut down or terminated. |
||||
TBD | |||||
VBGn |
|||||
Volume Background ASM and O/S volume driver communications |
Handles messages originating from the volume driver in the operating system and sends them to the ASM instance. Can run as multiple processes, where n is 0-9. |
||||
TBD | |||||
VDBG | |||||
Volume Driver | Handles requests to lock or unlock an extent for rebalancing, volume resize, disk offline, add or drop a disk, force and dismount disk group to the Dynamic Volume Manager driver | ||||
TBD | |||||
VInn |
|||||
Volume I/O | Route ADVM volume I/O for ASM instances on compute nodes within an Exadata These processes handle requests for I/Os targeted at storage not locally accessible. They are used for Exadata targeted storage as well. These background processes only start when an ASM Volume is created and set up to be used. One process will start for each NUMA node on target machines. Under normal operation on non-Exadata hardware and on Exadata hardware that is not utilizing ASM volumes, these processes will not be started. There can be up to 32 VI processes, and they are named sequentially from VI00 to VI31. |
||||
TBD | |||||
VKRM | |||||
Virtual Scheduler (Resource Manager) | Manages CPU scheduling for all managed processes in accordance with an active resource plan | ||||
DBMS_RESOURCE_MANAGER | |||||
VKTM | |||||
Virtual Timekeeper | Instance time publisher publishing two time sets. One is a wall clock time using a seconds interval and a higher resolution time (which is not wall clock time) for interval measurements. The VKTM timer service centralizes time tracking and offloads multiple timer calls from other clients. | ||||
TBD | |||||
VMB0 | |||||
Volume Membership | As an I/O capable client maintains cluster membership on behalf of the ASM volume driver. | ||||
TBD | |||||
VOSD (new 23c)
![]() |
|||||
Undocumented | TBD | ||||
TBD | |||||
VUBG | |||||
Volume drive Umbilicus Background | Relays messages between Oracle ASM instance and Oracle ASM Proxy instance that is used by ADVM (for ACFS) | ||||
TBD | |||||
W00n |
|||||
Space Management Slave | Slave processes dynamically spawned by SMCO to perform background space management tasks.
These tasks include pre-allocating space for locally managed tablespaces and SecureFiles segments based on space usage growth analysis and reclaiming space from dropped segments.
At most 10 Wnnn slaves can run on an instance. The slaves acts as autonomous agents and after task completion, a process automatically picks up another task from the queue or terminates itself after being idle for an extended time period. |
||||
TBD | |||||
XDMG | |||||
Exadata Automation Storage Manager | Monitors all configured Exadata cells for state changes, such as a bad disk getting replaced, and performs the required tasks for such events. Its primary tasks are to watch for inaccessible disks and cells and when they become accessible again, and to initiate the ASM ONLINE operation. The ONLINE operation is handled by XDWK. | ||||
TBD | |||||
XDWK | |||||
Exadata Automation Manager XDMG Slave | Started when asynchronous actions such as ONLINE, DROP, and ADD an ASM disk are requested by XDMG. After a 5 minute period of inactivity, this process will shut itself down. | ||||
TBD | |||||
Xnnn |
|||||
ASM Disk Expel Slave | At the completion of ASM Rebalance expels dropped disks | ||||
TBD | |||||
Demo | |||||
|
Related Topics |
Automatic Storage Management (ASM) |
Built-in Functions |
Built-in Packages |
Dynamic Performance Views |
Real Application Clusters (RAC) |
What's New In 21c |
What's New In 23c |
This site is maintained by Dan Morgan. Last Updated: | This site is protected by copyright and trademark laws under U.S. and International law. © 1998-2023 Daniel A. Morgan All Rights Reserved | |||||||||
|
||||||||||