The background processes of the Oracle instance manage memory structures, asynchronously perform I/O to write data to a file on a disk, and perform general maintenance tasks. The background processes consolidate functions that would otherwise be handled by multiple Oracle Database programs running for each user process. They monitor other Oracle Database processes to provide increased parallelism for better performance and reliability.
The background processes that are present depend on the features that are being used in the database. Some fundamental background processes are described in Table 5-1.
Table 5-1 Oracle Database Background Processes
Background Process | Description |
---|---|
The database writer writes modified blocks from the database buffer cache to the files on a disk. Oracle Database allows a maximum of 36 database writer processes. |
|
The log writer process writes redo log entries to disk. Redo log entries are generated in the redo log buffer of the System Global Area (SGA) and the log writer process writes the redo log entries sequentially into an online redo log file. |
|
At specific times, all modified database buffers in the SGA are written to the data files by a database writer process (DBWn). This event is called a checkpoint. The checkpoint process signals DBWn, updates the data files and control files of the database, and records the time of this update. |
|
The system monitor performs instance recovery when a failed instance is restarted. |
|
The process monitor performs a recovery when a user process fails. It cleans up the cache and frees resources that the failed process was using. |
|
Archiver processes copy the online redo log files to archival storage when the log files are full or a log switch occurs. The database must be in archive log mode to run archive processes. For more information, see Performing Backup and Recovery. |
|
This process performs various management-related background tasks, for example:
|
|
Job Queue Processes (CJQ0 and Jnnn) |
Job queue processes run user jobs, often in batch mode. A job is a user-defined task scheduled to run one or more times. |
See Also:
Oracle Database Reference for a complete list of Oracle Database background processes
Oracle Database Concepts for an overview of background processes