||Oracle Tips by Burleson
Tuning the DBWR Process
The DBWR process manages the buffer cache. In this capacity, it
writes filled buffers from the buffer cache in the SGA to the disks.
Obviously, a properly tuned DBWR process will be the first step in
tuning I/O for the Oracle system. The DBWR process, as described in
the section on UTLBSTAT and UTLESTAT, uses the hidden INIT.ORA
parameters _DB_BLOCK_WRITE_BATCH and _DB_BLOCK_MAX_SCAN_CNT in
Oracle8 to determine when it should write used, or dirty, buffers to
the disk, thus freeing them for further use. DBWR triggers on the
A user process writes a used buffer to
the dirty buffer list and finds it is _DB_BLOCK_WRITE_BATCH / 2
A user process searches _DB_BLOCK_MAX_SCAN_CNT
buffers without finding a clean one.
The DBWR has been inactive for three
When a checkpoint occurs, LGWR signals
DBWR to trigger it to write.
The DBWR writes out _DB_BLOCK_WRITE_BATCH
buffers each time it is triggered. If there aren't that many buffers
in the dirty buffer list, the buffers on the LRU list are written
until _DB_BLOCK_WRITE_BATCH buffers are written.
This is an excerpt by
Mike Ault’s book “Oracle
Administration & Management” . If you want more current Oracle
tips by Mike Ault, check out his new book “Mike
Ault’s Oracle Internals Monitoring & Tuning Scripts” or Ault’s
Oracle Scripts Download.
Copyright © 1996 - 2014 by
Burleson. All rights reserved.
Oracle® is the registered trademark
of Oracle Corporation.