Buffers=rollforward-buffer-count
Specifies the number of database buffers available to roll after-
image journals forward to the standby database.
Applicable to: Standby
database
Required or Optional
Optional:
Local Global Buffers
Buffers
Default Value: 4096 4096 or Global Buffer USER LIMIT,
whichever is smaller
Minimum Value: 2 2
Maximum Value: 1,048,576 1048576 or Gloal Buffer USER
LIMIT,
whichever is smaller
During replication operations, the LRS process on the standby
node receives after-image journal records from the master
database and rolls them forward to the standby database.
You can use the optional Buffers qualifier to override the
default number of database buffers.
For optimal performance, you should allocate a sufficient number
of buffers so that the server process can roll the after-image
journal records forward with a minimum number of I/O operations.
To estimate an appropriate number of buffers, use the following
equation as a starting point:
(Number of Modified Buffers per Transaction * Number of Users) + 20%
For example, if the average number of modified buffers per
transaction is 10 and there are 100 users on the database, then
the server process needs 1000 buffers at one time. To ensure that
you have an adequate number of buffers, add another 20 percent
(200 buffers) for a total of 1200 buffers.
The number of buffers can impact the time it takes for the LRS
process to checkpoint. When a checkpoint occurs, the LRS must
write all modified buffers to disk. For example, if the LRS
is using 2000 buffers, and it takes one second for 2000 disk
writes to complete, the LRS will be stalled for one second while
those writes are being done. This could cause the Hot Standby
governor to increase the synchronization mode if there is a lot
of update activity occurring while the LRS is checkpointing. For
some applications this could impose a practical limitation in the
number of buffers allocated to the LRS.
NOTE
The LRS process on the standby database does not use buffer
values defined by the following:
o DBM$BIND_BUFFERS logical name
o RDB_BIND_BUFFERS configuration parameter
o RDM$BIND_BUFFERS logical name
When replication operations are active, you can use the RMU or
DBO Show Users command to see the current number of database
buffers allocated. If replication operations are not active or
if you want to see the buffer value that was set on a previous
Replicate After_Journal Start command (stored in the database
root file), you can also use the Header and Dump_Select_Type=Hot_
Standby qualifiers on the RMU or DBO Dump command.