Databases Reference
In-Depth Information
How It Works
Ordinarily you don't need to adjust the degree of parallelism for media recovery. This is because Oracle automatically
parallelizes media recovery for you. Oracle determines the number of parallel processes to spawn for media recovery
from the initialization parameter
cpu_count
. This parameter is set by default to the number of CPUs on your
database server.
For example, if your server has two CPUS, then by default
cpu_count
will be set to 2 when you create your
database. For this server, Oracle will spawn two processes to apply redo anytime you issue a
recover
command (from
either RMAN or SQL*Plus).
Oracle's documentation states that systems with efficient asynchronous I/O see little benefit from parallel media
recovery. You should test whether adjusting the degree of parallelism improves performance before you attempt this
in a production environment.
■
the initialization parameter
recovery_parallelism
has no effect on media recovery.
the
recovery_parallelism
parameter affects only crash recovery.
Note
Slowing RMAN Down
Problem
Users are complaining about poor application performance. You've noticed that the performance degradation occurs
while the RMAN backups are running. You want to reduce RMAN's I/O rate so that it spreads out its impact on the
system over a period of time.
■
Consider using compressed backups to slow down rMan. this will result in more Cpu usage, but fewer writes
spread out over a longer period of time. if you have plenty of Cpu power, this is a simple but effective way to slow rMan
down. if you take this approach, remember that your restore time will be greater because rMan must uncompress the
backups as part of the restore operation.
Tip
Solution
Use one of the following to control RMAN's I/O rate:
backup duration ... minimize load
command
•
The
rate
clause of the
allocate channel
or
configure channel
command
•
The
Using backup duration . . . minimize load
Use the
backup duration ... minimize load
command to evenly distribute RMAN I/O over a period of time. This
example shows how to spread the I/O of an RMAN backup over a 45-minute period:
RMAN> backup duration 00:45 minimize load database;
RMAN will report the time taken for the backup operation in the output, as shown in this snippet:
channel ORA_DISK_1: throttle time: 0:44:43