Oracle® Database Backup and Recovery Advanced User's Guide 10g Release 2 (10.2) Part Number B14191-01 |
|
|
View PDF |
When RMAN needs to resynchronize from a read-consistent version of the control file, it creates a temporary snapshot control file. RMAN needs a snapshot control file only when resynchronizing with the recovery catalog or when making a backup of the current control file.
The default value for the snapshot control file is platform-specific and depends on the Oracle home. For example, the default filename on some UNIX platforms in Oracle Database 10g is $ORACLE_HOME/dbs/snapcf_@.f
. Note that if you have a flash recovery area configured, the default location for the snapshot control file is not the flash recovery area.
In general, you should only need to set the snapshot control file location when you are upgrading to the current release from a release earlier than 8.1.7. In these earlier releases, the default location for the snapshot control file was not dependent on the Oracle home, whereas in the current release the default location is dependent on the Oracle home.
By default, the location of the snapshot control file is determined by the rules in the following table:
If you ... | Then ... |
---|---|
Create a new database in the current release | The snapshot control file location uses the default value. In this case, the default snapshot control file location changes if you change the Oracle home. |
Upgrade to the current release from a release prior to 8.1.7 | The snapshot control file location is not set to the default value. Instead, RMAN uses the snapshot location that is already stored in the control file. In this case, the snapshot control file location does not change if you change the Oracle home. |
You can see the current snapshot location by running the SHOW
command. This example shows a snapshot location that is determined by the default rule:
RMAN> SHOW SNAPSHOT CONTROLFILE NAME; CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/oracle/dbs/snapcf_trgt.f'; # default
This example shows a snapshot control file that has a nondefault filename:
RMAN> SHOW SNAPSHOT CONTROLFILE NAME; CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/oracle/oradata/trgt/snap_trgt.ctl';
Use the CONFIGURE
SNAPSHOT
CONTROLFILE
NAME
TO
'
filename
'
command to change the name of the snapshot control file. Subsequent snapshot control files that RMAN creates use the specified filename.
For example, start RMAN and then enter:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/oracle/oradata/trgt/snap_trgt.ctl';
You can also set the snapshot control file name to a raw device:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/dev/vgd_1_0/rlvt5';
If one RMAN job is already backing up the control file while another needs to create a new snapshot control file, you may see the following message:
waiting for snapshot control file enqueue
Under normal circumstances, a job that must wait for the control file enqueue waits for a brief interval and then successfully retrieves the enqueue. Recovery Manager makes up to five attempts to get the enqueue and then fails the job. The conflict is usually caused when two jobs are both backing up the control file, and the job that first starts backing up the control file waits for service from the media manager.
See Also: "Backup Fails Because of Control File Enqueue: Scenario", Oracle Database Oracle Clusterware and Oracle Real Application Clusters Administration and Deployment Guide for handling of snapshot control files in RAC configurations, and Oracle Database Backup and Recovery Reference forCONFIGURE syntax |
To reset the snapshot control file location to the default, run the CONFIGURE
SNAPSHOT
CONTROLFILE
LOCATION
CLEAR
command.
Issue the SHOW
SNAPSHOT
CONTROLFILE
command to display the value set by CONFIGURE SNAPSHOT CONTROLFILE NAME
.
Note: In releases prior to Oracle9i, theCONFIGURE SNAPSHOT CONTROLFILE command was called SET SNAPSHOT CONTROLFILE . |
To show the snapshot control file filename:
After connecting to the target database and recovery catalog (if you use one), run the SHOW
SNAPSHOT
CONTROLFILE
command. For example, enter:
SHOW SNAPSHOT CONTROLFILE NAME; # shows CONFIGURE SNAPSHOT CONTROLFILE setting
Sample output for SHOW
SNAPSHOT
CONTROLFILE
follows:
RMAN configuration parameters are: CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/oracle/dbs/cf_snap.f';
See Also: "Setting the Snapshot Control File Location" to learn about the snapshot control file and its function |