RMAN Create Script

RMAN CREATE SCRIPT command is used to create a stored script in the recovery catalog

Creating a Global Stored Script

This example connects RMAN to target database prod and recovery catalog database catdb as catalog user rco. The example creates a global script called global_backup_db that backs up the database and archived redo log files:

RMAN> CONNECT TARGET "[email protected] AS SYSBACKUP"

target database Password: password
connected to target database: PROD (DBID=39525561)

RMAN> CONNECT CATALOG [email protected]

recovery catalog database Password: password
connected to recovery catalog database

RMAN> CREATE GLOBAL SCRIPT global_backup_db { BACKUP DATABASE PLUS ARCHIVELOG; }
RMAN> EXIT;

You can now connect RMAN to a different target database such as prod2 and run the global stored script:

RMAN> CONNECT TARGET "[email protected] AS SYSBACKUP"

target database Password: password
connected to target database: PROD2 (DBID=36508508)

RMAN> CONNECT CATALOG [email protected]

recovery catalog database Password: password
connected to recovery catalog database

RMAN> RUN { EXECUTE SCRIPT global_backup_db; }

Creating a Stored Script That Uses Substitution Variables

The following example connects RMAN to a target database and recovery catalog and uses CREATE SCRIPT to create a backup script that includes three substitution variables. RMAN prompts you to enter initial values for the variables (user input is shown in bold).

RMAN> CONNECT TARGET /
RMAN> CONNECT CATALOG [email protected]

recovery catalog database Password: password
connected to recovery catalog database

RMAN> CREATE SCRIPT backup_df 
2> { BACKUP DATAFILE &1 TAG &2.1 FORMAT '/disk1/&3_%U'; }
 Enter value for 1: 1
 
Enter value for 2: df1_backup
 
Enter value for 3: df1

starting full resync of recovery catalog
full resync complete
created script backup_df
 

When you run EXECUTE SCRIPT, you can pass different values to the script. The following example passes the values 3test_backup, and test to the substitution variables in the stored script:

RMAN> RUN { EXECUTE SCRIPT backup_df USING 3 test_backup df3; }

After the values are substituted, the script executes as follows:

BACKUP DATAFILE 3 TAG test_backup1 FORMAT '/disk1/df3_%U';

Deleting a Global Script

This example deletes global script backup_db from the recovery catalog:

RMAN> LIST SCRIPT NAMES;
 
List of Stored Scripts in Recovery Catalog
 
 
    Scripts of Target Database PROD
 
       Script Name
       Description
       -----------------------------------------------------------------------
       backup_whole
       backup whole database and archived redo log files
 
 
    Global Scripts
 
 
       Script Name
       Description
       -----------------------------------------------------------------------
       global_backup_db
       back up any database from the recovery catalog, with logs
 
RMAN> DELETE GLOBAL SCRIPT global_backup_db;
 
deleted global script: global_backup_db
 
RMAN> LIST SCRIPT NAMES;
 
List of Stored Scripts in Recovery Catalog
 
 
    Scripts of Target Database PROD
 
       Script Name
       Description
       -----------------------------------------------------------------------
       backup_whole
       backup whole database and archived redo log files

Also See:

Oracle RMAN