This chapter describes how to perform setup and configuration tasks. This chapter contains these topics:
See Also:
Oracle Database Backup and Recovery Basics for basic RMAN configuration informationTo take maximum advantage of the flash recovery area, it should be used to store and manage as many different types of file as possible: online redo logs, archived redo logs, control files and RMAN's own working files for backup and restore operations.
This section contains the following topics:
Configuring Online Redo Log Creation in the Flash Recovery Area
Configuring Control File Creation in the Flash Recovery Area
The following statements can create online redo logs in the flash recovery area:
CREATE DATABASE
ALTER DATABASE ADD LOGFILE
ALTER DATABASE ADD STANDBY LOGFILE
ALTER DATABASE OPEN RESETLOGS
The default size of an online log created in the flash recovery area is 100 MB. The log member filenames are automatically generated by the database.
The initialization parameters that determine where online redo log files are created are DB_CREATE_ONLINE_LOG_DEST_n, DB_RECOVERY_FILE_DEST and DB_CREATE_FILE_DEST. Details of the effect of various combinations of these parameters on online redo log creation can be found inOracle Database SQL Reference in the description of the LOGFILE clause of the CREATE DATABASE statement.
The initialization parameters CONTROL_FILES, DB_CREATE_ONLINE_LOG_DEST_n, DB_RECOVERY_FILE_DEST, and DB_CREATE_FILE_DEST all interact to determine the location where the database control files are created.
For a full description of how these parameters interact, see the "Semantics" section of the description of CREATE CONTROLFILE in Oracle Database SQL Reference.
If the database creates an Oracle managed control file, and if the database uses a server parameter file, then the database sets the CONTROL_FILES initialization parameter in the server parameter file. If the database uses a client-side initialization parameter file, then you must set the CONTROL_FILES initialization parameter manually in the initialization parameter file.
It is recommended that you the use flash recovery area as an archived log location because the archived logs are automatically managed by the database. Whatever archiving scheme you choose, it is always advisable to create multiple copies of archived logs.
You have the following basic options, listed from most to least recommended:
Enable archiving to the flash recovery area only and use disk mirroring to create the redundancy needed to protect the archived redo logs.
Enable archiving to the flash recovery area and set other LOG_ARCHIVE_DEST_n initialization parameter to locations outside the flash recovery area.
Set LOG_ARCHIVE_DEST_n initialization parameters to archive only to non-flash recovery area locations.
If you want to use the flash recovery area, you cannot use the LOG_ARCHIVE_DEST and LOG_ARCHIVE_DUPLEX_DEST initialization parameters. You must use instead the LOG_ARCHIVE_DEST_n parameters, which have somewhat different semantics. Once your database is using LOG_ARCHIVE_DEST_n, you can configure a flash recovery area.
The interactions among different initialization parameters affecting redo log archiving distinctions are as follows:
If LOG_ARCHIVE_DEST (and, optionally, LOG_ARCHIVE_DUPLEX_DEST) is set, these parameters will specify the only redo log archiving destinations.
If DB_RECOVERY_FILE_DEST is specified (that is, if a flash recovery area is configured) and no LOG_ARCHIVE_DEST_n is specified, then LOG_ARCHIVE_DEST_10 is implicitly set to the flash recovery area. (You can override this behavior by explicitly setting LOG_ARCHIVE_DEST_10 to an empty string.)
If you set any local destinations for LOG_ARCHIVE_DEST_n, then archived redo logs are stored only in the destinations you specify using those parameters. In this case, redo log files are not archived in the flash recovery area by default. If you have a flash recovery area configured, you can explicitly add the flash recovery area to the set of archiving destinations by setting one of the LOG_ARCHIVE_DEST_n parameters to LOCATION=USE_DB_RECOVERY_FILE_DEST (note that this does not have to be LOG_ARCHIVE_DEST_10).
If you do not set any value for LOG_ARCHIVE_DEST, LOG_ARCHIVE_DEST_n, or DB_RECOVERY_FILE_DEST, then the redo logs are archived to a default location that is platform-specific. On Solaris, for example, the default is: ?/dbs.
This section describes RMAN commands or implicit actions (such as control file autobackup) that can create files in the flash recovery area, and how to control whether a specific command creates files there or in some other destination. The assumption in all cases is that a flash recovery area has already been configured for your database. The commands are:
BACKUP
Do not specify a FORMAT option to the BACKUP command, and do not configure a FORMAT option for disk backups. In such a case, RMAN creates backup pieces and image copies in the flash recovery area, with names in Oracle Managed Files name format.
Control File Autobackup
RMAN can create control file autobackups in the flash recovery area. Use the RMAN command CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK CLEAR to clear any configured format option for the control file autobackup location on disk. Control file autobackups will be placed in the flash recovery area when no other destination is configured.
RESTORE ARCHIVELOG
Explicitly or implicitly (as in the case of), set one of the LOG_ARCHIVE_DEST_n) parameters to 'LOCATION=USE_DB_RECOVERY_FILE_DEST'. If you do not specify SET ARCHIVELOG DESTINATION to override this behavior, then restored archived redo log files will be stored in the flash recovery area.
RECOVER DATABASE or TABLESPACE, BLOCKRECOVER, and FLASHBACK DATABASE
These commands restore archived redo logs from backup for use during media recovery, as required by the command. RMAN restores any redo log files needed during these operations to the flash recovery area, and delete them once they are applied during media recovery.
To direct the restored archived redo logs to the flash recovery area, set one of the LOG_ARCHIVE_DEST_n parameters to 'LOCATION=USE_DB_RECOVERY_FILE_DEST", and make sure you are not using SET ARCHIVELOG DESTINATION to direct restored archived logs to some other destination.
On most platforms, to back up to and restore from sequential media such as tape you must integrate a media manager with your Oracle database. A media manager is not an Oracle product and must be obtained from a third-party vendor. If you choose to use RMAN with a media manager, then you must obtain all product-specific information from the vendor.
This section describes the generic steps for configuring RMAN for use with a media manager. The actual steps depend on the media management product that you install and the platform on which you are running the database.
Read the following sections in order when configuring the media manager:
Locating the Media Management Library: The SBT_LIBRARY Parameter
Testing Whether the Media Manager Library Is Integrated Correctly
Configuring SBT Channels for Use with a Media Manager
See Also:
"Media Management" for an overview of media management software and its implications for RMANBefore you can begin using RMAN with a media manager, you must install it and make sure that RMAN can communicate with it. Instructions for this procedure should be available in the media manager vendor's software documentation.
In general, you should begin by installing and configuring the media management software on the target host or production network. Ensure that you can make non-RMAN backups of operating system files on the target database host. This step makes later troubleshooting much easier, by confirming that the basic integration of the media manager with the target host has been successful. Refer to your media management documentation to learn how to back up files to the media manager outside of RMAN.
Then, obtain and install the third-party media management module for integration with the database server. This module contains the media management library that the Oracle database loads and uses when accessing the media manager. It is generally a third-party product which must be purchased separately. Contact your media management vendor for details.
When allocating or configuring channels for RMAN to use to communicate with a media manager, specify the SBT_LIBRARY parameter to provide the path to the media management software library. When RMAN actually allocates channels to communicate with a media manager, it attempts to load the library indicated by the SBT_LIBRARY parameter.
If you do not provide a value for this parameter, RMAN looks in a platform-specific default location. On UNIX, the default library filename is $ORACLE_HOME/lib/libobk.so, with the extension name varying according to platform: .so, .sl, .a, and so forth. On Windows the default library location is %ORACLE_HOME%\bin\orasbt.dll.
Note:
The default media management library file is not part of the standard database installation. It is only present if you install third-party media management software.If the database is unable to locate a media management library in the location specified by the SBT_LIBRARY parameter or the default location, then RMAN issues an ORA-27211 error and exits.
Whenever channel allocation fails, the database writes a trace file to the USER_DUMP_DEST directory. The following shows sample output:
SKGFQ OSD: Error in function sbtinit on line 2278 SKGFQ OSD: Look for SBT Trace messages in file /oracle/rdbms/log/sbtio.log SBT Initialize failed for /oracle/lib/libobk.so
See Also:
Your operating system specific database documentation and the documentation supplied by your media vendor for instructions on how to achieve media manager integration on your platform
"After Installation of Media Manager, RMAN Channel Allocation Fails: Scenario" for troubleshooting scenarios involving media manager problems
After you have confirmed that the database server can load the media management library, test to make sure that RMAN can back up to the media manager. The process for testing the media management library is described in the following sections:
After installing the media management software, perform whatever configuration that your vendor requires so that the software can accept RMAN backups. Depending on the type of media management software that you installed, you may have to define media pools, configure users and classes, and so forth.
Then, determine which PARMS settings are needed for the ALLOCATE CHANNEL or CONFIGURE CHANNEL commands as well as the recommended FORMAT string for the BACKUP command (if needed). The PARMS parameter sends instructions to the media manager. For example, the following vendor-specific PARMS setting instructs the media manager to back up to a volume pool called oracle_tapes:
PARMS='ENV=(NSR_DATA_VOLUME_POOL=oracle_tapes)'
Refer to your third-party vendor documentation for the appropriate settings.
See Also:
Oracle Database Backup and Recovery Reference for ALLOCATE CHANNEL syntax
Oracle Database Backup and Recovery Reference for channel control options
To work with restrictions on file names and sizes imposed by your media manager, you may need to configure RMAN settings that control the naming and size of backup pieces.
You may need to manage the naming of backup pieces to be written to the media manager, so that backup pieces have unique names. A backup piece name is determined by the FORMAT string specified in the BACKUP command, the CONFIGURE CHANNEL command, or the ALLOCATE CHANNEL command. The media manager considers the backup piece name as the filename of the backup file, so this name must be unique in the media manager catalog.
You can use the substitution variables provided by RMAN to generate unique backup piece names. If you do not specify the FORMAT parameter, then RMAN automatically generates a unique filename with the %U substitution variable.
Note:
Refer to your media management documentation to determine the string character limit for the media manager. For example, some media managers only support a 14-character backup piece name, and some require specialFORMAT strings. The unique backup piece names generated by %U are less than 14 characters.See Also:
Oracle Database Backup and Recovery Reference for the complete list of variables allowable in format strings with theBACKUP commandSome media managers have limits on the maximum size of files that they can back up or restore. You must ensure that RMAN does not produce backup sets larger than limits imposed by your media manager.
To limit backup piece sizes, use the parameter MAXPIECESIZE, which you can set in the CONFIGURE CHANNEL and ALLOCATE CHANNEL commands. Refer to the *.rcv scripts in the demo subdirectory on your system, which is located in an operating system specific location ($ORACLE_HOME/rdbms on UNIX) for an example.
See Also:
Oracle Database Backup and Recovery Reference and "Size of Backup Pieces"for details on how to setMAXPIECESIZEUse the following steps to confirm that RMAN is able to load the media management library when allocating a channel for your media manager.
Start RMAN and connect to the target database. For example, enter:
% rman TARGET /
Run the ALLOCATE CHANNEL command with the PARMS required by your media management software. For example, run this command:
RUN
{
ALLOCATE CHANNEL c1 DEVICE TYPE sbt
PARMS='SBT_LIBRARY=/mediavendor/lib/libobk.so ENV=(NSR_SERVER=tape_srv,NSR_GROUP=oracle_tapes)';
}
If you do not receive an error message, then the database successfully loaded the media management library. If you receive the ORA-27211 error, the media management library could not be loaded:
RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03009: failure of allocate command on c1 channel at 11/30/2001 13:57:18 ORA-19554: error allocating device, device type: SBT_TAPE, device name: ORA-27211: Failed to load Media Management Library Additional information: 25
In this case, you must check your media management installation to make sure that the library is correctly installed, and re-check the value for the SBT_LIBRARY parameter as described in "Locating the Media Management Library: The SBT_LIBRARY Parameter".
For any other errors, check the trace file in USER_DUMP_DEST directory for more information.
See Also:
"After Installation of Media Manager, RMAN Channel Allocation Fails: Scenario" for a troubleshooting scenarioAfter testing a channel allocation on the media manager, make a test backup. For example, to test whether your backup goes successfully to tape, you might run the following command:
RUN
{
ALLOCATE CHANNEL c1 DEVICE TYPE sbt
PARMS='SBT_LIBRARY=/mediavendor/lib/libobk.so ENV=(NSR_SERVER=tape_srv,NSR_GROUP=oracle_tapes)';
BACKUP CURRENT CONTROLFILE;
}
The specifics of your PARMS and FORMAT settings depend on the media management software that you are using.
If the backup succeeds, then you are ready to make backups to your media manager.
Possible failures include the following cases:
| Case | Response |
|---|---|
| The backup hangs. | A hanging backup usually indicates that the media manager is waiting to mount a tape. Check if there are any media manager jobs in "tape mount request" mode and fix the problem.
Ensure that the steps in "Configuring RMAN to Make Backups to a Media Manager" are correctly done. Refer to "Backup Job Is Hanging: Scenario" if the problem persists. |
The backup fails with an ORA-19511 |
This error indicates that the media management software is not correctly configured. Ensure that the steps in "Configuring RMAN to Make Backups to a Media Manager" are correctly done. Also, ensure that you have the correct PARMS and FORMAT strings required by your media management software. |
See Also:
"Testing the Media Management API" and "RMAN Troubleshooting Scenarios" for more information about troubleshooting RMAN with a media managerThis section describes how to configure channels specifically for use with a media manager. For an overview of configured channels and how they are used, refer to the section "Configuring Channels". The following setup procedure references the sections in "Configuring Channels" where it is appropriate.
To configure channels for use with a media manager:
Configure a generic channel of DEVICE TYPE sbt as described in "Configuring Channel Settings for a Device Type". In the configuration enter all parameters that you tested in the section "Testing a Backup to the Media Manager". For example, assume that your media vendor requires PARMS settings as follows:
RMAN> CONFIGURE CHANNEL DEVICE TYPE sbt PARMS='SBT_LIBRARY=/mediavendor/lib/libobk.so ENV=(NSR_SERVER=tape_svr,NSR_CLIENT=oracleclnt,NSR_GROUP=ora_tapes)' FORMAT "BACKUP_%U";
After configuring the channel, test by backing up something small, such as the control file:
RMAN> BACKUP DEVICE TYPE sbt CURRENT CONTROLFILE;
Check your configuration by running the following command:
RMAN> SHOW CHANNEL FOR DEVICE TYPE sbt;
Configure the default device to sbt so that RMAN sends all backups to the media manager. For example:
RMAN> CONFIGURE DEFAULT DEVICE TYPE TO sbt;
After configuring the default device, make a test backup to determine whether it is really going to the media manager:
RMAN> BACKUP CURRENT CONTROLFILE;
Check your configuration by running the following command:
RMAN> SHOW DEFAULT DEVICE TYPE;
If you use more than one tape device, then you must specify the channel parallelism as described in "Configuring Channel Parallelism". Assume that you want to back up to your media manager using two tape drives in parallel. In this case, you can run the following commands:
RMAN> CONFIGURE DEVICE TYPE sbt PARALLELISM 2; RMAN> BACKUP DATABASE;
You can configure persistent settings for your channels, such as channel parameters, parallelism, and the default device type for backups. The configured settings are stored in the RMAN repository. If you configure channel settings, then you do not have to use ALLOCATE CHANNEL commands with every RMAN backup, restore, recovery or maintenance command. Configuring persistent channel settings greatly simplifies the use of RMAN.
You can always override configured channels with ALLOCATE CHANNEL for a particular backup job surrounded by a RUN block.
By default, RMAN has preconfigured a disk channel so that you can back up to disk without doing any manual configuration. You may, however, want to parallelize the channels for disk or tape devices to improve performance.
See Also:
"About RMAN Channels" for a conceptual overview of configured and allocated channels, and Oracle Database Backup and Recovery Reference for syntaxConfiguring parallelism for a device type specifies the number of server sessions to be used for I/O to that device type. By default, channel parallelism for each configured device is set to 1. As a rule, allocating one channel for each physical device is best. If you are backing up to only one disk location or only one tape drive, then you need only one channel.
The CONFIGURE DEVICE TYPE ... PARALLELISM integer command specifies how many channels (up to 254) RMAN should allocate for jobs on the specified device type. This command allocates three channels for jobs on device type DISK :
RMAN> CONFIGURE DEVICE TYPE DISK PARALLELISM 3;
These commands back up to a media manager using two tape drives in parallel:
RMAN> CONFIGURE DEFAULT DEVICE TYPE TO sbt; # default backup device is tape RMAN> CONFIGURE DEVICE TYPE sbt PARALLELISM 2; # configure two tape channels RMAN> BACKUP DATABASE; # backup goes to two tapes, in two parallel streams
Each configured sbt channel will back up roughly half the total data.
By default, RMAN allocates a one DISK channel with default options, and uses it for backup commands.
Note:
This disk channel allocated by default is not the same channel as the default channel, a disk channel which RMAN creates when it first connects to the target instance, and generally does not use for activities such as backups and restores that require large amounts of I/O.However, you may want to change the default DISK channel settings, for example, to specify a degree of parallelism or output locations for disk backups. Also, if you use a media manger, you must configure any required options for it, such as PARMS, FORMAT, MAXPIECESIZE, and so forth. By configuring channel settings, you define which parameters are used for channels RMAN allocates when you use configured channels for a backup job.
Use the CONFIGURE CHANNEL command to configure options for DISK and sbt channels. CONFIGURE CHANNEL takes the same options used to specify one-time options with ALLOCATE CHANNEL.
For example, you can configure default parameters for disk and tape channels as in this example:
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT = '?/bkup_%U'; RMAN> CONFIGURE CHANNEL DEVICE TYPE sbt PARMS='SBT_LIBRARY=/mediavendor/lib/libobk.so ENV=(NSR_SERVER=tape_svr,NSR_CLIENT=oracleclnt,NSR_GROUP=ora_tapes)';
You can configure generic channel settings for a device type, that is, a template that is used for any channels created based on configured settings for that device. If you set the PARALLELISM for a device, and then make the device default, then RMAN uses the generic configured channel settings for each parallelized channel.
Note that if you use CONFIGURE CHANNEL to specify generic channel settings for a device, any previous settings are discarded, even if the settings are not in conflict. For example, after the second CONFIGURE CHANNEL command, which specifies only a FORMAT for configured disk channels, the MAXPIECESIZE for the disk channel is returned to its default value:
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 2G; RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT = /tmp/%U;
You can also configure default settings for individual channels from a group of parallelized channels by specifying a channel number.
The SHOW CHANNEL, SHOW DEVICE TYPE and SHOW DEFAULT DEVICE TYPE commands are used to display the current configured channel settings.
After connecting to the target database and recovery catalog (if you use one), issue the SHOW CHANNEL command to display the currently configured channel settings. For example, connect the RMAN client to the target and, if applicable, the recovery catalog. Then enter:
RMAN> SHOW CHANNEL;
Sample output for SHOW CHANNEL follows:
RMAN configuration parameters are: CONFIGURE CHANNEL DEVICE TYPE SBT RATE 1500K;
Issue the SHOW DEVICE TYPE command to display the configured devices and their PARALLELISM and backup type settings.
To show the default device type and currently configured settings for disk and sbt devices:
After connecting to the target database and recovery catalog (if you use one), run the SHOW DEVICE TYPE command. For example, enter:
SHOW DEVICE TYPE; # shows the CONFIGURE DEVICE TYPE ... PARALLELISM settings
Sample output for SHOW DEVICE TYPE follows:
RMAN configuration parameters are: CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO COPY; CONFIGURE DEVICE TYPE 'SBT_TAPE' PARALLELISM 2 BACKUP TYPE TO BACKUPSET;
Note:
As with allSHOW commands, the output of SHOW DEVICE TYPE is in the form of a valid RMAN CONFIGURE command. You can in fact enter one command, like those shown in the preceding sample output, to configure the backup type and parallelism simultaneously. Refer to the syntax diagrams for CONFIGURE in Oracle Database Backup and Recovery Reference for details on all of the possible ways of combining arguments to the CONFIGURE command.Issue the SHOW DEFAULT DEVICE TYPE command to display the settings for the default device type for backups. When you issue the BACKUP command, RMAN allocates only default channels of the type set by the CONFIGURE DEFAULT DEVICE TYPE command. This default device type setting is not in effect when you use commands other than BACKUP. Note that you cannot disable the default device type: it is always either DISK (default setting) or sbt.
To show the default device type for backups:
After connecting to the target database and recovery catalog (if you use one), run the SHOW DEFAULT DEVICE TYPE command. For example, enter:
SHOW DEFAULT DEVICE TYPE; # shows the CONFIGURE DEFAULT DEVICE TYPE setting
Sample output for SHOW DEFAULT DEVICE TYPE follows:
RMAN configuration parameters are: CONFIGURE DEFAULT DEVICE TYPE TO 'SBT';
If you manually allocate a channel during a job, then RMAN disregards any configured channel settings. For example, assume that the default device type is configured to sbt, and you execute this command:
RMAN> RUN
{
ALLOCATE CHANNEL c1 DEVICE TYPE DISK;
BACKUP TABLESPACE users;
}
In this case, RMAN uses only the disk channel that you manually allocated within the RUN block, overriding any defaults set by using CONFIGURE DEVICE TYPE, CONFIGURE DEFAULT DEVICE, or CONFIGURE CHANNEL settings.
See Also:
"About RMAN Channels" to learn about configured and allocated channels
Oracle Database Backup and Recovery Reference for ALLOCATE syntax
Oracle Database Backup and Recovery Reference' for CONFIGURE syntax
Besides configuring a generic channel for a device, you can also configure one or more specific channels for each device type by manually assigning your own channel numbers to the channels. Run the CONFIGURE CHANNEL n command (where n is a positive integer less than 255) to configure a specific channel. When manually numbering channels, you must specify one or more channel options (for example, MAXPIECESIZE or FORMAT) for each channel. When you use that specific numbered channel in a backup, the configured settings for that channel will be used instead of the configured generic channel settings.
Configure specific channels by number when it is necessary to control the parameters set for each channel separately. This could arise in the following situations:
When running a Real Application Clusters (RAC) configuration in which individual nodes do not have access to the full set of backups, so different nodes must be configured with different connect strings so that all backups are accessible from some node
When running a Real Application Cluster and using a media manager with multiple tape drives requiring different PARMS settings
In this example, you want to send disk backups to two different disks. Configure disk channels as follows:
CONFIGURE DEFAULT DEVICE TYPE TO disk; # backup goes to disk CONFIGURE DEVICE TYPE sbt PARALLELISM 2; # two channels used in in parallel CONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT '/disk1/%U' # 1st channel to disk1 CONFIGURE CHANNEL 2 DEVICE TYPE DISK FORMAT '/disk2/%U' # 2nd channel to disk2 BACKUP DATABASE; # backup - first channel goes to disk1 and second to disk2
In this example, assume that you have two tape drives and want each tape drive to use tapes from a different tape pool. Configure your default output device and default sbt channels as follows:
CONFIGURE DEFAULT DEVICE TYPE TO sbt; # backup goes to sbt CONFIGURE DEVICE TYPE sbt PARALLELISM 2; # two sbt channels will be allocated by default # Assume media manager takes NSR_DATA_VOLUME_POOL to # specify a pool # Configure channel 1 to pool named first_pool CONFIGURE CHANNEL 1 DEVICE TYPE sbt PARMS 'SBT_LIBRARY=/mediavendor/lib/libobk.so ENV=(NSR_DATA_VOLUME_POOL=first_pool)'; # configure channel 2 to pool named second_pool CONFIGURE CHANNEL 2 DEVICE TYPE sbt PARMS 'SBT_LIBRARY=/mediavendor/lib/libobk.so ENV=(NSR_DATA_VOLUME_POOL=second_pool)'; BACKUP DATABASE; # first stream goes to 'first_pool' and second to 'second_pool'
When parallelizing, RMAN always allocates channels beginning with CHANNEL 1 and ending with channel number equal to the PARALLELISM setting.
If you configure settings for a specific channel using CONFIGURE CHANNEL with a channel number, RMAN uses those specified configured settings. Otherwise, it uses the generic configuration for channels for that device type, as specified by the CONFIGURE CHANNEL command without a channel number.
Assume you enter the following channel configuration:
# disk channel configuration
CONFIGURE DEVICE TYPE DISK PARALLELISM 4;
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT = '/tmp/backup_%U';
CONFIGURE CHANNEL 2 DEVICE TYPE DISK MAXPIECESIZE = 20M;
CONFIGURE CHANNEL 4 DEVICE TYPE DISK MAXPIECESIZE = 40M;
# sbt channel configuration
CONFIGURE DEVICE TYPE sbt PARALLELISM 3;
CONFIGURE CHANNEL DEVICE TYPE sbt
PARMS='SBT_LIBRARY=oracle.disksbt, ENV=(BACKUP_DIR=?/oradata)';
CONFIGURE CHANNEL 3 DEVICE TYPE sbt
PARMS='SBT_LIBRARY=oracle.disksbt, ENV=(BACKUP_DIR=/tmp)';
The following table illustrates the channel names and channel settings that RMAN allocates when the default device is DISK and PARALLELISM for DISK is set to 4.
| Channel Name | Setting |
|---|---|
ORA_DISK_1 |
FORMAT = '/tmp/backup_%U' |
ORA_DISK_2 |
MAXPIECESIZE = 20M |
ORA_DISK_3 |
FORMAT = '/tmp/backup_%U' |
ORA_DISK_4 |
MAXPIECESIZE = 40M |
The following table illustrates the channel names and channel settings that RMAN allocates when the default device is sbt and PARALLELISM for sbt is set to 3.
| Channel Name | Setting |
|---|---|
ORA_SBT_TAPE_1 |
PARMS='ENV=(BACKUP_DIR=?/oradata)' |
ORA_SBT_TAPE_2 |
PARMS='ENV=(BACKUP_DIR=?/oradata)' |
ORA_SBT_TAPE_3 |
PARMS='ENV=(BACKUP_DIR=/tmp)' |
The PARALLELISM setting is not constrained by the number of specifically configured channels. For example, if you back up to 20 different tape devices, then you can configure 20 different sbt channels, each with a manually assigned number (from 1 to 20) and each with a different set of channel options. In such a situation, you can set PARALLELISM to any value up to the number of devices, in this instance 20.
RMAN always numbers parallel channels starting with 1 and ending with the PARALLELISM setting. For example, if the default device is sbt and PARALLELISM for sbt is set to 3, then RMAN names the channels as follows:
ORA_SBT_TAPE_1 ORA_SBT_TAPE_2 ORA_SBT_TAPE_3
RMAN always uses the name ORA_SBT_TAPE_n even if you configure DEVICE TYPE sbt (not the synonymous sbt_tape). RMAN always allocates the number of channels specified in PARALLELISM, using specifically configured channels if you have configured them and generic channels if you have not.
See Also:
"Automatic Channel-Specific Configurations" for concepts about manually numbered channels, and "Configuring Specific Channels: Examples"To clear a configuration is to return it to its default settings. You can clear channel and device settings by using these commands:
CONFIGURE DEVICE TYPE ... CLEAR
CONFIGURE DEFAULT DEVICE TYPE CLEAR
CONFIGURE CHANNEL DEVICE TYPE ... CLEAR
CONFIGURE CHANNEL n DEVICE TYPE ... CLEAR (where n is an integer)
Each CONFIGURE ... CLEAR command clears only itself. For example, CONFIGURE DEVICE TYPE ... CLEAR does not clear CONFIGURE DEFAULT DEVICE TYPE. The CONFIGURE DEVICE TYPE ... CLEAR command removes the configuration for the specified device type and returns it to the default (PARALLELISM 1).
Note:
You cannot specify any other options when clearing a device type.The CONFIGURE DEFAULT DEVICE TYPE ... CLEAR command clears the configured default device and returns it to DISK (the default setting).
The CONFIGURE CHANNEL DEVICE TYPE ... CLEAR command erases the channel configuration for the specified device type. RMAN does not change the PARALLELISM setting for the device type because PARALLELISM is specified through a separate CONFIGURE command.
If you have manually assigned options to configured channels, then clear the options for these channels individually by specifying the channel number in CONFIGURE CHANNEL n DEVICE TYPE ... CLEAR. For example, assume that you run the following:
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE = 1800K; RMAN> CONFIGURE CHANNEL 3 DEVICE TYPE DISK FORMAT = /tmp/%U; RMAN> CONFIGURE CHANNEL 3 DEVICE TYPE DISK CLEAR;
In this case, RMAN clears the settings for CHANNEL 3, but leaves the settings for the generic DISK channel (the channel with no number manually assigned) intact.
See Also:
"Clearing Automatic Channel Settings "The CONFIGURE MAXSETSIZE command limits the size of backup sets created on a channel. This CONFIGURE setting applies to any channel, whether manually allocated or configured, when the BACKUP command is used to create backup sets.
You can set MAXSETSIZE in bytes (default), kilobytes (K), megabytes (M), and gigabytes (G). The default value is given in bytes and is rounded down to the lowest kilobyte value. For example, if you set the maximum set size to 2000, then RMAN rounds down this value to 1 kilobyte (1024 bytes). If you set the maximum set size to 2049, then RMAN rounds down this value to 2 kilobytes (2048 bytes).
The value set by the CONFIGURE MAXSETSIZE command is a default for the given channel. You can override the configured MAXSETSIZE value by specifying a MAXSETSIZE option for an individual BACKUP command.
Assume that you issue the following commands at the RMAN prompt:
CONFIGURE DEFAULT DEVICE TYPE TO sbt; CONFIGURE CHANNEL DEVICE TYPE sbt PARMS 'ENV=(NSR_DATA_VOLUME_POOL=first_pool)'; CONFIGURE MAXSETSIZE TO 7500K; BACKUP TABLESPACE users; BACKUP TABLESPACE tools MAXSETSIZE 5G;
The results will be as follows:
The backup of the users tablespace uses the configured sbt channel and the configured default MAXSETSIZE setting of 7500K.
The backup of the tools tablespace uses the MAXSETSIZE setting of 5G used in the BACKUP command.
Note:
There is no equivalent toMAXSETSIZE for controlling the size of image copies. Since an image copy is an exact duplicate of the file being backed up, its size must be identical to the source file.
This fact can present a problem with some older operating systems which limit the size of individual files. If you are using a raw partition to store a 10GB datafile, and your operating system only supports 4GB files on the file system, you cannot take image copy backups of that file.
You can use SHOW MAXSETSIZE to view the maximum backup set size set using CONFIGURE MAXSETSIZE. The size of a backup set is measured in the total bytes of the included backup pieces. After connecting to the target database and recovery catalog (if you use one), issue the SHOW MAXSETSIZE command. For example, enter:
SHOW MAXSETSIZE; # shows the CONFIGURE MAXSETSIZE settings
Sample output for SHOW MAXSETSIZE follows:
RMAN configuration parameters are: CONFIGURE MAXSETSIZE TO 3072K;
Run the CONFIGURE command to enable and disable backup optimization. Backup optimization skips the backup of files in certain circumstances if the identical file or an identical version of the file has already been backed up. Full details on the backup optimization algorithm are provided in "Backup Optimization".
Note that backup optimization applies only to the following commands:
BACKUP DATABASE
BACKUP ARCHIVELOG with ALL or LIKE options
BACKUP BACKUPSET ALL
You can override optimization at any time by specifying the FORCE option on the BACKUP command. For example, you can run:
BACKUP DATABASE FORCE; BACKUP ARCHIVELOG ALL FORCE;
By default, backup optimization is configured to OFF. To enable backup optimization, run the following command:
CONFIGURE BACKUP OPTIMIZATION ON;
To disable backup optimization, run the following command:
CONFIGURE BACKUP OPTIMIZATION OFF;
To clear the current backup optimization setting, that is, return backup optimization to its default setting of OFF, run this command:
CONFIGURE BACKUP OPTIMIZATION CLEAR;
See Also:
"Backup Optimization Algorithm" for the complete criteria that determine whether a file is identical and the conditions under which backup optimization is operative
"Backing Up Files Using Backup Optimization" for examples of how to optimize RMAN backups
You can use SHOW BACKUP OPTIMIZATION to view the current settings of backup optimization as configured with the CONFIGURE BACKUP OPTIMIZATION command. After connecting to the target database and recovery catalog (if you use one), issue the SHOW BACKUP OPTIMIZATION command. For example, enter:
SHOW BACKUP OPTIMIZATION;
Sample output for SHOW BACKUP OPTIMIZATION follows:
RMAN configuration parameters are: CONFIGURE BACKUP OPTIMIZATION ON;
Use the CONFIGURE ... BACKUP COPIES command to specify how many copies of each backup piece should be created on the specified device type for the specified type of file. This feature is known as duplexing. The CONFIGURE setting s for duplexing only affect backups of datafiles, control files and archived logs into backup sets, and do not affect image copies.
Note:
Control file autobackups on disk are a special case and are never duplexed: RMAN always creates one and only one copy.To configure the number of backup set copies, specify an integer. The following examples show possible configurations:
# Makes 2 disk copies of each datafile and control file backup set # (autobackups excluded) CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 2; # Makes 3 copies of every archived redo log backup to tape CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE sbt TO 3;
If you use the duplexing feature in conjunction with multiple FORMAT strings, then you can name each individual backup set copy. For example, assume that you configure BACKUP COPIES to 3. Then, you can issue:
BACKUP DATABASE FORMAT '/tmp/%U', '?/dbs/%U', '?/oradata/%U';
RMAN generates 3 identical copies of each backup piece in the backup set, and names each piece according to the specified FORMAT string: the first copy is placed in the /tmp directory, the second in the ?/dbs directory, and the third in the ?/oradata directory. Note that you can specify the FORMAT string on the BACKUP, CONFIGURE CHANNEL, and ALLOCATE CHANNEL commands.
To return a BACKUP COPIES configuration to its default value, run the same CONFIGURE command with the CLEAR option, as in this example:
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE sbt CLEAR;
By default, CONFIGURE ... BACKUP COPIES is set to 1 for each device type.
Note:
If you do not want to create a persistent copies configuration, then you can specify copies with theBACKUP COPIES and SET BACKUP COPIES commands.See Also:
"Manual Parallelization of Backups" for concepts
Oracle Database Backup and Recovery Reference for BACKUP syntax
Oracle Database Backup and Recovery Reference for CONFIGURE syntax
Oracle Database Backup and Recovery Reference for SET syntax
SHOW... BACKUP COPIES lets you view how you have used CONFIGURE ... BACKUP COPIES command to set the number of identical copies that RMAN makes of each of several types of backup.
After connecting to the target database and recovery catalog (if you use one), run the SHOW ARCHIVELOG BACKUP COPIES or SHOW DATAFILE BACKUP COPIES commands. For example, enter:
SHOW DATAFILE BACKUP COPIES; # shows CONFIGURE DATAFILE BACKUP COPIES setting
Sample output for SHOW DATAFILE BACKUP COPIES follows:
RMAN configuration parameters are: CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE SBT_TAPE TO 1; # default CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
You can run CONFIGURE EXCLUDE FOR TABLESPACE to exempt the specified tablespace from the BACKUP DATABASE command. The exclusion condition applies to any datafiles that you add to this tablespace in the future.
This tablespace exclusion feature is useful when you do not want to make a specified tablespace part of the regular backup schedule, as in these cases:
A tablespace is easy to rebuild, so it is more cost-effective to rebuild it than back it up every day.
A tablespace contains temporary or test data that you do not need to back up.
A tablespace does not change often and therefore should be backed up on a different schedule from other backups.
For example, you can exclude testing tablespaces cwmlite and example from whole database backups as follows:
CONFIGURE EXCLUDE FOR TABLESPACE cwmlite; CONFIGURE EXCLUDE FOR TABLESPACE example;
If you run the following command, then RMAN backs up all tablespaces in the database except cwmlite and example:
BACKUP DATABASE;
You can still back up the configured tablespaces by explicitly specifying them in a BACKUP command or by specifying the NOEXCLUDE option on a BACKUP DATABASE command. For example, you can enter one of the following commands:
# backs up the whole database, including cwmlite and example BACKUP DATABASE NOEXCLUDE; BACKUP TABLESPACE cwmlite, example; # backs up only cwmlite and example
You can disable the exclusion feature for cwmlite and example as follows:
CONFIGURE EXCLUDE FOR TABLESPACE cwmlite CLEAR; CONFIGURE EXCLUDE FOR TABLESPACE example CLEAR;
RMAN includes these tablespaces in future whole database backups.
SHOW EXCLUDE shows how you have used the CONFIGURE EXCLUDE command to exclude tablespaces from whole database backups.
After connecting to the target database and recovery catalog (if you use one), run the SHOW EXCLUDE command. For example, enter:
RMAN> SHOW EXCLUDE; # shows the CONFIGURE EXCLUDE setting
Sample output for SHOW EXCLUDE follows:
RMAN configuration parameters are: CONFIGURE EXCLUDE FOR TABLESPACE 'OLD_ACCOUNTS';
See Also:
Oracle Database Backup and Recovery Reference for BACKUP syntax
Oracle Database Backup and Recovery Reference for CONFIGURE syntax
When performing tablespace point-in-time recovery (TSPITR) or duplicating a database using RMAN, you may want to set the names of datafiles in the auxiliary instance before startingthe actual TSPITR or database duplication.
The command for doing so is:
CONFIGURE AUXNAME FOR datafileSpec TO 'filename';
where datafileSpec identifies some datafile by its original name or datafile number, and filename is the new path for the specified file.
For example, you might configure a new auxiliary name for datafile 2 as follows:
CONFIGURE AUXNAME FOR DATAFILE 2 TO '/newdisk/datafiles/df2.df;'
As with other settings, this CONFIGURE setting is persistent across RMAN sessions until cleared using CONFIGURE... CLEAR, as shown here:
CONFIGURE AUXNAME FOR DATAFILE 2 CLEAR;
If you are performing TSPITR or running the DUPLICATE command, then by using CONFIGURE AUXNAME you can preconfigure the filenames for use on the auxiliary database without manually specifying the auxiliary filenames during the procedure.
When renaming files with the DUPLICATE command, CONFIGURE AUXNAME is an alternative to SET NEWNAME. The difference is that after you set the AUXNAME the first time, you do not need to reset the filename when you issue another DUPLICATE command: the AUXNAME setting remains in effect until you issue CONFIGURE AUXNAME ... CLEAR. In contrast, you must reissue the SET NEWNAME command every time you rename files.
See Chapter 8, "RMAN Tablespace Point-in-Time Recovery (TSPITR)" for more details on using CONFIGURE AUXNAME in connection with TSPITR, and Chapter 13, "Creating and Updating Duplicate Databases with RMAN" for more on using CONFIGURE AUXNAME in performing database duplication.
To view auxiliary datafile names currently configured for your database, you can use the SHOW AUXNAME command:
RMAN> SHOW AUXNAME;
Sample output follows:
RMAN configuration parameters are:
CONFIGURE AUXNAME FOR DATAFILE '/oracle/oradata/trgt/tools01.dbf' TO
'/tmp/tools01.dbf';
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 syntaxTo 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 functionRMAN cannot connect to the target database through a shared server dispatcher. RMAN requires a dedicated server process. Nevertheless, you can connect specified sessions to dedicated servers, even when the target is configured for a shared server.
To ensure that RMAN does not connect to a dispatcher when the target database is configured for a shared server, the net service name used by RMAN must include (SERVER=DEDICATED) in the CONNECT_DATA attribute of the connect string.
Oracle Net configuration varies greatly from system to system. The following procedure illustrates only one method. This scenario assumes that the following service name in the tnsnames.ora connects to the target database using the shared server architecture, where inst1 is a value of the SERVICE_NAMES initialization parameter:
inst1_shs =
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=inst1_host)(port1521))
(CONNECT_DATA=(SERVICE_NAME=inst1)(SERVER=shared))
)
To use RMAN with a shared server:
Create a net service name in the tnsnames.ora file that connects to the non-shared SID. For example, enter:
inst1_ded =
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=inst1_host)(port1521))
(CONNECT_DATA=(SERVICE_NAME=inst1)(SERVER=dedicated))
)
Start SQL*Plus and then connect using both the shared server and dedicated server service names to confirm the mode of each session. For example, to connect to a dedicated session you can issue:
CONNECT SYS/oracle@inst1_ded SELECT SERVER FROM V$SESSION WHERE SID = (SELECT DISTINCT SID FROM V$MYSTAT); SERVER --------- DEDICATED 1 row selected.
To connect to a shared server session, you can issue:
CONNECT SYS/oracle@inst1_shs AS SYSDBA SELECT SERVER FROM V$SESSION WHERE SID = (SELECT DISTINCT SID FROM V$MYSTAT); SERVER --------- SHARED 1 row selected.
Connect to the target database (and optionally the recovery catalog) with the dedicated service name. For example, enter:
% rman TARGET SYS/oracle@inst1_ded CATALOG rman/cat@catdb
See Also:
Your platform-specific Oracle documentation and your Oracle Database Net Services Reference for a complete description of Oracle Net connect string syntax