| From: | Steve Adams |
| Date: | 19-Oct-2000 10:58 |
| Subject: | DB writer performance |
|
|
You are right that this is a DBWR problem. Use asynchronous writes if possible. Only allow log switch checkpoints, not interval checkpoints. Make the internal write batch size (seen in X$KVII) no more than one order of magnitude greater than the number of physical disk spindles used for datafiles. Make the checkpoint batch size approximately a quarter of the internal write batch size. If that is not enough, then you need to spread the I/O over more physical disks. In the short term you can consider increasing the log file size (not the number of groups) to give DBWR more time to finish each log switch checkpoint, or you can reduce db_block_buffers to limit the backlog of dirty buffers. However these approaches are only treating the symptoms, not the cause.
|
![]() |
We have an Oracle 7.3.3 Server. There are 4 processes that do many operations (inserts/deletes) on the database. We have 6 redo log groups with 2 file (every 10MB). Every 10 min. the message "Thread 1 cannot allocate new log, sequence XXX Checkpoint not complete" is in the alert.log. It seems the dbwriter is not fast enough to write the redo logs in the database. How can we tune it? We think it's not a solution to add more logfiles, because the processes works every time.
|