Files
oracle/idev/rman_configuration_setup_9i.rcv

468 lines
34 KiB
Plaintext
Raw Normal View History

2026-03-12 21:23:47 +01:00
# +----------------------------------------------------------------------------+
# | Jeffrey M. Hunter |
# | jhunter@idevelopment.info |
# | www.idevelopment.info |
# |----------------------------------------------------------------------------|
# | Copyright (c) 1998-2012 Jeffrey M. Hunter. All rights reserved. |
# |----------------------------------------------------------------------------|
# | DATABASE : Oracle |
# | FILE : rman_configuration_setup_9i.rcv |
# | CLASS : Recovery Manager |
# | PURPOSE : Provides an example RMAN script used to persist Oracle9i RMAN |
# | configuration parameters to the control file of the target |
# | database. These parameters are used to control default RMAN |
# | operations. Some of the operations that can be performed are: |
# | |
# | - The required number of backups of each datafile. |
# | - The number of server processes that will perform Backup |
# | and Restore tasks in parallel. |
# | - The directory where on-disk backups will be stored. |
# | |
# | This script will can be run by RMAN to configure (persist) the |
# | default parameters for the target database. For parameters that |
# | should maintain their default setting, should use the "CLEAR" |
# | command to reset the parameter explicitly. |
# | |
# | NOTE : As with any code, ensure to test this script in a development |
# | environment before attempting to run it in production. |
# +----------------------------------------------------------------------------+
# +----------------------------------------------------------------------------+
# | <<< RMAN DEFAULT SETTING >>> |
# |----------------------------------------------------------------------------+--------------------------+
# | CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default |
# | CONFIGURE BACKUP OPTIMIZATION OFF; # default |
# | CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default |
# | CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default |
# | CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default |
# | CONFIGURE DEVICE TYPE DISK PARALLELISM 1; # default |
# | CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default |
# | CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default |
# | CONFIGURE MAXSETSIZE TO UNLIMITED; # default |
# | CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/9.2.0/dbs/snapcf_ORA920.f'; # default |
# +-------------------------------------------------------------------------------------------------------+
# +----------------------------------------------------------------------------+
# | RETENTION POLICY |
# |----------------------------------------------------------------------------|
# | Used to control how long RMAN will keep backups. This can be configured by |
# | the "number" of backups taken, or by the numbers of "days" to keep. Here |
# | is an example of both: |
# | |
# | CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 3 DAYS; |
# | |
# | CONFIGURE RETENTION POLICY TO REDUNDANCY 2; |
# | |
# | Note that when configuring a retention policy, RMAN will *not* cause |
# | backups to be automatically deleted. The retention policy will, however, |
# | mark backups as OBSOLETE that have fallen outside the retention period. |
# | RMAN commands like "REPORT OBSOLETE" and "DELETE OBSOLETE" will work with |
# | these obsolete backups. |
# +----------------------------------------------------------------------------+
CONFIGURE RETENTION POLICY TO REDUNDANCY 2;
# +----------------------------------------------------------------------------+
# | BACKUP OPTIMIZATION |
# |----------------------------------------------------------------------------|
# | Used to enable or disable backup optimization. Backup file optimization |
# | can assist in reducing the space used to backup the database. When |
# | performing an RMAN backup, a check is done on the file before backup to |
# | see if the file already exists in a backupset with the same information: |
# | (dbid, checkpoint, and resetlogs data). |
# | |
# | For archive logs, the same file means the same dbid, thread, sequence, and |
# | resetlogs data. If the DELETE INPUT option is used, RMAN deletes all the |
# | files that would have been backed up, even when the file is not included |
# | due to file optimization. |
# | |
# | The two possible values for backup optimization is ON and OFF as shown in |
# | the following example syntax: |
# | |
# | CONFIGURE BACKUP OPTIMIZATION OFF; |
# | |
# | CONFIGURE BACKUP OPTIMIZATION ON; |
# | |
# | Use caution when enabling backup optimization if you use a media manager |
# | that has an expiration policy. The media manager can expire tapes |
# | containing backups (using its media control software), and RMAN will *not* |
# | make new backups because of optimization. One way to protect from this is |
# | to run CROSSCHECK periodically to synchronize the repository with the |
# | media manager. |
# | |
# | Also note that you should consider how backup optimization works with |
# | regards to the RETENTION POLICY. RMAN will only work with files within |
# | the retention period. For example, consider performing a backup with |
# | optimization enabled and a retention period of 3 days. RMAN will only |
# | compare the datafile with backup sets within the 3 day period - even if |
# | the datafile it is about to backup hasn't changed within that 3 days. |
# +----------------------------------------------------------------------------+
CONFIGURE BACKUP OPTIMIZATION CLEAR;
# +----------------------------------------------------------------------------+
# | DEFAULT DEVICE TYPE |
# |----------------------------------------------------------------------------|
# | Configures the default backup / restore device type for automatic |
# | channels. The two values for now are TAPE (SBT) and DISK (DISK) - the |
# | default being DISK. By default, the BACKUP and COPY commands only allocate |
# | channels of the default device type. For example, if you configure |
# | automatic channels for DISK and sbt and set the default device type to |
# | DISK, then RMAN only allocates disk channels when you run the BACKUP |
# | DATABASE command. You can override this behavior either by manually |
# | allocating channels in a RUN command, or by specifying DEVICE TYPE on the |
# | BACKUP command itself. The RESTORE command allocates automatic channels of |
# | all configured device types, regardless of the default device type. The |
# | RESTORE command obeys the PARALLELISM setting for each configured device |
# | type. |
# | |
# | The following two examples show the syntax for configuring the default |
# | device type to TAPE (SBT) - then another command to re-configure the |
# | default device type to DISK: |
# | |
# | CONFIGURE DEFAULT DEVICE TYPE TO SBT; |
# | |
# | CONFIGURE DEFAULT DEVICE TYPE TO DISK; |
# | |
# +----------------------------------------------------------------------------+
CONFIGURE DEFAULT DEVICE TYPE TO DISK;
# +----------------------------------------------------------------------------+
# | CONTROLFILE AUTOBACKUP |
# |----------------------------------------------------------------------------|
# | Starting with Oracle9i, RMAN offers the ability to backup the control file |
# | and the database parameter file (SPFILE only) and have this take place |
# | automatically by default after each backup. By default, this feature is |
# | not enabled. This feature can be enabled or disabled using the example |
# | syntax below: |
# | |
# | CONFIGURE CONTROLFILE AUTOBACKUP ON; |
# | |
# | CONFIGURE CONTROLFILE AUTOBACKUP OFF; |
# | |
# | When the CONTROLFILE AUTOBACKUP feature is enabled, then RMAN performs a |
# | control file autobackup in the following circumstances: |
# | |
# | - After every BACKUP or COPY command issued at the RMAN prompt. |
# | - Whenever a BACKUP or COPY command within a RUN block is followed |
# | by a command that is neither BACKUP nor COPY. |
# | - At the end of every RUN block if the last command in the block was |
# | either BACKUP or COPY. |
# | - After database structural changes such as adding a new tablespace, |
# | altering the state of a tablespace or datafile (for example, |
# | bringing it online), adding a new online redo log, renaming a file, |
# | adding a new redo thread, and so forth. This type of autobackup, |
# | unlike autobackups that occur in the preceding circumstances, goes |
# | only to disk. You can run: |
# | CONFIGURE CONTROLFILE AUTOBACKUP FOR DEVICE TYPE DISK |
# | to set a nondefault disk location. |
# | |
# | The "first channel" allocated during the BACKUP or COPY job creates the |
# | autobackup and places it "into its own backup set"; for post-structural |
# | autobackups, the "default disk channel" makes the backup. |
# | |
# | RMAN writes both the CONTROLFILE and the SPFILE (if the database was |
# | started with an SPFILE) to the same backup piece. |
# | After the CONTROLFILE AUTOBACKUP completes, Oracle writes a message |
# | containing the complete path of the backup piece and the device type to |
# | the alert log. |
# | |
# | RMAN automatically backs up the current control file using the default |
# | format of %F (see entry for CONFIGURE CONTROLFILE AUTOBACKUP FORMAT for an |
# | explanation of this substitution variable). You can change this format |
# | using the CONFIGURE CONTROLFILE AUTOBACKUP FORMAT and SET CONTROLFILE |
# | AUTOBACKUP FORMAT commands. |
# | |
# | When this feature is disabled, any BACKUP command that includes datafile 1 |
# | (including BACKUP DATABASE) automatically includes the current control |
# | file and server parameter file in the backup set. Otherwise, RMAN does not |
# | include these files. |
# | |
# | NOTE: You may see occasions where RMAN will sometimes automatically |
# | include the CONTROLFILE and SPFILE in the backupsets during a backup. This |
# | is normal and is documented (above). When CONTROLFILE AUTOBACKUP is not |
# | enabled, the CONTROLFILE and SPFILE, (if the database was started with an |
# | spfile), are included automatically when datafile 1 is backed up. Consider |
# | the following backup: |
# | |
# | RMAN> backup datafile 1; |
# | |
# | It will include the CONTROLFILE and the SPFILE (when the database is |
# | started with a spfile). |
# +----------------------------------------------------------------------------+
CONFIGURE CONTROLFILE AUTOBACKUP ON;
# +----------------------------------------------------------------------------+
# | CONTROLFILE AUTOBACKUP FORMAT |
# |----------------------------------------------------------------------------|
# | Configures the default filename format for the control file autobackup on |
# | the specified device type. By default, the initial format is %F for all |
# | devices. Any default format string specified with CONFIGURE must include |
# | the %F substitution variable (see BACKUP). This variable translates into |
# | c-IIIIIIIIII-YYYYMMDD-QQ, where: |
# | |
# | - IIIIIIIIII stands for the DBID. (The DBID is printed in decimal so |
# | that it can be easily associated with the target database. |
# | - YYYYMMDD is a time stamp in the Gregorian calendar of the day the |
# | backup is generated. |
# | - QQ is the sequence in hexadecimal number that starts with 00 |
# | and has a maximum of 'FF' (256). |
# | |
# | Specify CLEAR to return the format to the default %F. |
# | |
# | NOTE: The %F tag is essential for RMAN to be able to restore the file |
# | without a recovery catalog. |
# +----------------------------------------------------------------------------+
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/orabackup/rman/ORA920/%F';
# +----------------------------------------------------------------------------+
# | PARALLELISM |
# |----------------------------------------------------------------------------|
# | Configure RMAN to use [n] number of disk channels for backup, restore, |
# | recovery, and maintenance operations. Device types that are eligible for |
# | use in jobs that use automatic channels can sets the degree of channel |
# | parallelism. (The DISK device type is the default) |
# | |
# | The PARALLELISM parameter specifies the number of automatic channels of |
# | the specified device type allocated for RMAN jobs. RMAN always allocates |
# | the number of channels specified by PARALLELISM, although it may actually |
# | use only a subset of these channels. |
# | |
# | By default, PARALLELISM = 1. |
# | |
# | Take the following example; you can set PARALLELISM for DISK backups to 3. |
# | If you configure automatic channels of type disk and tape, and set the |
# | default device type as disk, then RMAN allocates three disk channels when |
# | you run BACKUP DATABASE at the RMAN prompt. |
# | |
# | To change the parallelism for a device type to [n], run: |
# | |
# | CONFIGURE DEVICE TYPE [DISK | SBT] PARALLELISM [n]; |
# | |
# | Here are several examples of how to configure PARALLELISM to 3 for sbt and |
# | then change it to 2: |
# | |
# | CONFIGURE DEVICE TYPE sbt PARALLELISM 3; |
# | CONFIGURE DEVICE TYPE sbt PARALLELISM 2; |
# | |
# | Another example that configures parallelism to 2 for automatic disk |
# | channel. |
# | |
# | CONFIGURE DEVICE TYPE DISK PARALLELISM 2; |
# | |
# | NOTE: If you configure [n] manually numbered channels, the PARALLELISM |
# | setting can be greater than or less than [n]. For example, you can |
# | manually number 10 automatic channels and configure PARALLELISM to 2 or |
# | even 12. |
# +----------------------------------------------------------------------------+
CONFIGURE DEVICE TYPE DISK CLEAR;
# +----------------------------------------------------------------------------+
# | DATABASE BACKUP COPIES |
# | ARCHIVELOG BACKUP COPIES |
# |----------------------------------------------------------------------------|
# | Specifies the number of copies of each backup set for DATAFILE (both |
# | datafiles and control files) or ARCHIVELOG files on the specified device |
# | type, from 1 (default) to 4. If duplexing is specified in the BACKUP |
# | command or in a SET BACKUP COPIES command, then the CONFIGURE setting is |
# | overridden. |
# | |
# | Here is the general syntax: |
# | |
# | {ARCHIVELOG| DATAFILE} |
# | BACKUP COPIES FOR DEVICE |
# | TYPE deviceSpecifier |
# | TO integer; |
# | |
# | NOTE: Control file autobackups on disk are a special case and are never |
# | duplexed. RMAN always writes one and only copy. |
# +----------------------------------------------------------------------------+
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK CLEAR;
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK CLEAR;
# +----------------------------------------------------------------------------+
# | CHANNEL CONFIGURATION |
# |----------------------------------------------------------------------------|
# | Specifies the standard or AUXILIARY channel that you are configuring or |
# | clearing, as well as the device type (DISK or sbt) of the channel. You can |
# | either configure a "generic channel" or specify a channel by number, where |
# | "integer" is less than 255. |
# | |
# | Here is the general syntax: |
# | |
# | CHANNEL integer DEVICE TYPE deviceSpecifier allocOperandList; |
# | |
# | integer You can specify a channel by number. You may |
# | also exclude an integer, in which case you |
# | are specifying a general channel. |
# | deviceSpecifier {DISK | SBT} |
# | allocOperandList /* Specifies control options for the */ |
# | /* allocated channel */ |
# | [PARMS = 'channel_parms'] |
# | [CONNECT = (quoted string)] |
# | [FORMAT = 'format_sring'] |
# | [MAXPIECESIZE = integer [K|M|G]] |
# | [RATE = integer [K|M|G]] |
# | [MAXOPENFILES = integer] |
# | [SEND = 'command'] |
# | |
# | NOTE: The RATE parameter is intended to slow down a backup so that you can |
# | run it in the background with as little effect as possible on OLTP |
# | operations. The RATE parameter specifies units of bytes/second. Test |
# | to find a value that improves performance of your queries while |
# | still letting RMAN complete the backup in a reasonable amount of |
# | time. Note that RATE is not designed to increase backup throughput, |
# | but to decrease backup throughput so that more disk bandwidth is |
# | available for other database operations. |
# | |
# | NOTE: The CONNECT parameter Specifies a connect string to the database |
# | instance where RMAN should conduct the backup or restore operations. |
# | Use this parameter to spread the work of backup or restore |
# | operations across different instances in an Oracle Real Application |
# | Clusters configuration. If you do not specify this parameter, and if |
# | you did not specify the AUXILIARY option, then RMAN conducts all |
# | operations on the target database instance specified by the |
# | command-line parameter or the instance connected to when you issued |
# | the CONNECT command. Typically, you should not use the CONNECT |
# | parameter in conjunction with the AUXILIARY option. |
# | |
# | I generally use this parameter to configure the location (directory) |
# | and file format where RMAN will write disk backups to. Here are some of |
# | the substitution variables that can be used in the backup set file name: |
# | |
# | %d Database name |
# | %s Backup set number |
# | %p Backup piece number |
# | %t 4-byte timestamp |
# | |
# | If you configure a generic channel (that is, if you do not specify a |
# | channel number), then RMAN uses the generic settings for every |
# | parallelized channel except any channel number that you have explicitly |
# | configured. In other words, a generic channel setting specifies options |
# | for all channels not configured explicitly. |
# | |
# | NOTE: For generic channels of a specified device type, a new command |
# | erases previous settings for this device type. Assume that you run |
# | these commands: |
# | |
# | CONFIGURE CHANNEL DEVICE TYPE sbt MAXPIECESIZE 1G; |
# | CONFIGURE CHANNEL DEVICE TYPE sbt RATE 1700K; |
# | |
# | The second command erases the MAXPIECESIZE setting of the first |
# | command. |
# | |
# | If AUXILIARY is specified, then this configuration is used only for |
# | channels allocated at the auxiliary instance. If no auxiliary device |
# | configuration is specified, and if RMAN needs to automatically allocate |
# | auxiliary channels, then RMAN uses the target database device |
# | configuration. It is not necessary to specify configuration information |
# | for auxiliary channels unless they require different parameters from the |
# | target channels. |
# | |
# | NOTE: It is useful to understand how the CLEAR command works for this |
# | parameter. CLEAR Clears the specified channel. For example, |
# | CONFIGURE CHANNEL 1 DEVICE TYPE DISK CLEAR returns only channel 1 to |
# | its default, whereas CONFIGURE CHANNEL DEVICE TYPE DISK CLEAR |
# | returns the generic disk channel to its default. Note that you |
# | cannot specify any other channel options (for example, PARMS) when |
# | you specify CLEAR. |
# +----------------------------------------------------------------------------+
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/orabackup/rman/ORA920/backup_db_%d_S_%s_P_%p_T_%t' MAXPIECESIZE 1024m;
# CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/orabackup/rman/ORA920/backup_db_%d_S_%s_P_%p_T_%t' MAXPIECESIZE 1024m RATE 5M;
# +----------------------------------------------------------------------------+
# | MAXSETSIZE |
# |----------------------------------------------------------------------------|
# | Specifies the maximum size of each backup set created on a channel. By |
# | default MAXSETSIZE is set to UNLIMITED, meaning that it is disabled. |
# | |
# | Here is the general syntax: |
# | |
# | CONFIGURE MAXSETSIZE TO { integer [K|M|G] | UNLIMITED | CLEAR }; |
# | |
# | TO integer Specifies the maximum set size in bytes, kilobytes (K), |
# | megabytes (M), or gigabtyes (G). The default setting is |
# | in bytes and is rounded down to kilobtyes. For example, |
# | if you set MAXSETSIZE to 5000, RMAN sets the maximum set |
# | size at 4 kilobytes (that is, 4096 bytes), which is the |
# | lower kilobyte boundary of 5000. The minimum value must |
# | be greater than or equal to the database block size. |
# | TO UNLIMITED Specifies that there is no size limit for backup sets. |
# | CLEAR Resets the maximum set size to its default value |
# | (UNLIMITED). |
# +----------------------------------------------------------------------------+
CONFIGURE MAXSETSIZE CLEAR;
# +----------------------------------------------------------------------------+
# | SNAPSHOT CONTROLFILE |
# |----------------------------------------------------------------------------|
# | Configures the snapshot control file filename to 'filename'. If you run |
# | CONFIGURE SNAPSHOT CONTROLFILE NAME CLEAR, then RMAN sets the snapshot |
# | control file name to its default. |
# | |
# | The default value for the snapshot control file name is platform-specific |
# | and dependent on the Oracle home. For example, the default on some UNIX |
# | system is ?/dbs/snapcf_@.f. If you clear the control file name, and you |
# | change the Oracle home, then the default location of the snapshot control |
# | file changes as well. |
# | |
# | SNAPSHOT CONTROLFILE NAME TO 'filename'; |
# +----------------------------------------------------------------------------+
CONFIGURE SNAPSHOT CONTROLFILE NAME CLEAR;
# +----------------------------------------------------------------------------+
# | EXCLUDE TABLESPACE |
# |----------------------------------------------------------------------------|
# | Excludes the specified tablespace from BACKUP DATABASE commands. Note that |
# | you cannot exclude the SYSTEM tablespace. By default, each tablespace is |
# | not excluded, that is, the exclude functionality is disabled. |
# | |
# | The exclusion is stored as an attribute of the tablespace, not the |
# | individual datafiles, so the exclusion applies to any files that are added |
# | to this tablespace in the future. |
# | |
# | If you run CONFIGURE ... CLEAR on a tablespace after excluding it, then it |
# | returns to the default configuration of "not excluded." |
# | |
# | You can still back up the configured tablespace by explicitly specifying |
# | it in a BACKUP command or by specifying the NOEXCLUDE option on a BACKUP |
# | DATABASE command. |
# | |
# | The general syntax is: |
# | |
# | EXCLUDE FOR TABLESPACE tablespace_name; |
# | |
# +----------------------------------------------------------------------------+
# CONFIGURE EXCLUDE FOR TABLESPACE USERS_READ_TBS;