-----------------------------------RMAN Quick Syntax Reference
@
BACKUP
CHANGE
CONFIGURE
COPY
CROSSCHECK
DELETE
LIST
RECOVER
REPORT
RESTORE
RUN
SET
SHOW
----------------------------------- DELETE
Parameter Example
EXPIRED DELETE EXPIRED
OBSOLETE DELETE OBSOLETE
NOPROMPT DELETE NOPROMPT OBSOLETE
CROSSCHECK BACKUP; # checks all RMAN backups on configured devices
CROSSCHECK COPY; # checks all RMAN copies on configured devices
-----------------------------------RMAN SCRIPT
CREATE script b_whole_l0
{
BACKUP INCREMENTAL LEVEL 0 TAG mon_bkup DATABASE;
BACKUP ARCHIVELOG ALL DELETE ALL INPUT;
}
Execute stored scripts within a RUN command as follows:
RUN { EXECUTE script mon_bkup; } # executes script mon_bkup
Use DELETE SCRIPT to delete a script, REPLACE SCRIPT
-----------------------------------RECOVERY CATELOG
Creating a Recovery Catalog Create a user and schema for the recovery
catalog, and grant the necessary privileges.
For example, in SQL*Plus enter:
CREATE USER rman IDENTIFIED BY rman TEMPORARY TABLESPACE temp
DEFAULT TABLESPACE cattbs QUOTA UNLIMITED ON cattbs;
GRANT RECOVERY_CATALOG_OWNER, CONNECT, RESOURCE TO rman;
Then, connect to the recovery catalog database as the catalog owner. For
example:
% rman CATALOG rman/rman@rcat
In the RMAN shell, run the following command:
CREATE CATALOG;
Registering the Target Database in the Recovery Catalog To register the target
database in the recovery catalog, connect to the target and catalog
databases, and run this command:
REGISTER DATABASE;
----------------------------------- REPORT
UNRECOVERABLE REPORT UNRECOVERABLE
SCHEMA REPORT SCHEMA AT TIME ’SYSDATE-30’
OBSOLETE REPORT OBSOLETE
NEED BACKUP REPORT NEED BACKUP DATABASE
-----------------------------------LIST
EXPIRED LIST EXPIRED COPY
RECOVERABLE LIST BACKUP RECOVERABLE
BY BACKUP LIST BACKUP OF DATABASE BY BACKUP
BY FILE LIST BACKUP BY FILE
SUMMARY LIST BACKUP SUMMARY
LIST BACKUP OF DATABASE;
LIST COPY OF DATAFILE 1, 2, 3;
LIST BACKUP OF ARCHIVELOG FROM SEQUENCE 1437;
LIST CONTROLFILECOPY "/tmp/cf.cpy";
LIST BACKUPSET 193, 207, 242;
LIST ARCHIVELOG ALL;
LIST BACKUP OF ARCHIVELOG ALL;
-----------------------------------BLOCK CORRUPTION
BLOCKRECOVER CORRUPTION LIST;
BLOCKRECOVER DATAFILE 7 BLOCK 233, 235 DATAFILE 4 BLOCK 101;
-----------------------------------RECOVERING SINGLE DATAFILE
RUN
{
SQL 'ALTER DATABASE DATAFILE 7 OFFLINE';
# To restore to a different location, uncomment the following command.
# SET NEWNAME FOR DATAFILE 7 TO '/newdir/new_filename.f';
RESTORE DATAFILE 7;
# If you restored to different locations, uncomment the following line.
# SWITCH DATAFILE ALL;
RECOVER DATAFILE 7;
SQL 'ALTER DATABASE DATAFILE 7 ONLINE';
}
-----------------------------------RECOVERING SINGLE TABLESPACE
RUN
{
SQL 'ALTER TABLESPACE users OFFLINE';
# To restore to a different location, uncomment the following commands.
# SET NEWNAME FOR DATAFILE 8 TO '/newdir/new_filename_for_8.f';
RESTORE TABLESPACE users;
# If you restored to different locations, uncomment the following line.
# SWITCH DATAFILE ALL;
RECOVER TABLESPACE users;
SQL 'ALTER TABLESPACE users ONLINE';
}
-----------------------------------RECOVERING WHOLE DATABASE
STARTUP FORCE MOUNT;
RESTORE DATABASE;
RECOVER DATABASE;
ALTER DATABASE OPEN;
-----------------------------------BACKUP
BACKUP DATABASE PLUS ARCHIVELOG;
BACKUP ARCHIVELOG TIME BETWEEN ’SYSDATE-31’ AND ’SYSDATE-7’;
BACKUP TABLESPACE system, users, tools, undotbs;
BACKUP DATAFILE ’?/oradata/trgt/users01.dbf’, ’?/oradata/trgt/tools01.dbf’;
BACKUP CURRENT CONTROLFILE TO ’/backup/curr_cf.copy’;
BACKUP SPFILE;
BACKUP BACKUPSET ALL;
BACKUP TABLESPACE tools, indx, undotbs FORMAT '?/oradata/%U';
BACKUP FILESPERSET 20 FORMAT='AL_%d/%t/%s/%p' ARCHIVELOG LIKE ’%arc_dest%’;
BACKUP TAG ’weekly_full_db_bkup’ DATABASE MAXSETSIZE 10M;
BACKUP COPIES 2 DEVICE TYPE sbt BACKUPSET ALL;
----------------------------------- RMAN COMMANDS SYNTAXES
-----------------------------------archivelogRecordSpecifier
This subclause specifies a range of archived redo logs.
ARCHIVELOG
{ ALL
| LIKE 'string_pattern'
| archlogRange [LIKE 'string_pattern' [THREAD [=] integer]]
}
{ { { UNTIL TIME | FROM TIME } [=] 'date_string'
| { TIME BETWEEN 'date_string' AND
| FROM TIME [=] 'date_string' UNTIL TIME [=]
}
'date_string'
@ LIST
BACKUP RECOVER
CHANGE REPORT
CONFIGURE RESTORE
COPY RUN
CROSSCHECK SET
DELETE SHOW
| UNTIL SCN [=] integer
| SCN BETWEEN integer AND integer
| FROM SCN [=] integer [UNTIL SCN [=] integer]
}
[THREAD [=] integer]
| { UNTIL SEQUENCE [=] integer
| FROM SEQUENCE [=] integer [UNTIL SEQUENCE [=] integer]
| SEQUENCE [BETWEEN integer AND] integer
}
[THREAD [=] integer]
}
-----------------------------------BACKUP
Backs up database files, archived logs, backups, and copies.
BACKUP [ FULL | INCREMENTAL LEVEL [=] integer ]
[backupOperand [backupOperand]...] backupSpec [backupSpec]...
[PLUS ARCHIVELOG [backupSpecOperand [backupSpecOperand]...]];
backupOperand::=
{ FORMAT [=] 'format_string' [, 'format_string']...
| CHANNEL ['] channel_id [']
| CUMULATIVE
| MAXSETSIZE [=] integer [ K | M | G ]
| FILESPERSET [=] integer
| TAG [=] ['] tag_name [']
| keepOption
| SKIP { OFFLINE | READONLY | INACCESSIBLE }
| VALIDATE
| NOT BACKED UP [SINCE TIME [=] 'date_string']
| COPIES [=] integer
| DEVICE TYPE deviceSpecifier
.
.
.
}
backupSpec::=
[(]
{ BACKUPSET
{ { ALL | completedTimeSpec }
| primary_key [, primary_key]...
}
| DATAFILE datafileSpec [, datafileSpec]...
| DATAFILECOPY 'filename' [, 'filename']...
| DATAFILECOPY TAG [=] ['] tag_name ['] [, ['] tag_name [']]...
| TABLESPACE ['] tablespace_name ['] [, ['] tablespace_name [']]...
| DATABASE
| archivelogRecordSpecifier
| CURRENT CONTROLFILE [FOR STANDBY]
| CONTROLFILECOPY 'filename'
| SPFILE
}
[backupSpecOperand [backupSpecOperand]...]
[)]
backupSpecOperand::=
{ FORMAT [=] 'format_string' [, 'format_string']...
| CHANNEL ['] channel_id [']
| MAXSETSIZE [=] integer [ K | M | G ]
| FILESPERSET [=] integer
| TAG [=] ['] tag_name [']
| keepOption
| SKIP { OFFLINE | READONLY | INACCESSIBLE }
| NOT BACKED UP [ SINCE TIME [=] 'date_string'
| integer TIMES
]
| DELETE [ALL] INPUT
.
.
.
}
-----------------------------------CHANGE
Alters the status of a backup or copy in the RMAN repository.
CHANGE
{ { BACKUP | COPY } [OF listObjList] [ maintQualifier [maintQualifier]...]
| recordSpec [DEVICE TYPE deviceSpecifier [, deviceSpecifier]...]
}
{ AVAILABLE | UNAVAILABLE | UNCATALOG | keepOption }
[DEVICE TYPE deviceSpecifier [, deviceSpecifier]...];
completedTimeSpec
COMPLETED
{ AFTER [=]
| BETWEEN 'date_string' AND | BEFORE [=] } 'date_string'
-----------------------------------CONFIGURE
Creates a persistent RMAN configuration.
CONFIGURE
{ deviceConf
| backupConf
| { AUXNAME FOR DATAFILE datafileSpec
| SNAPSHOT CONTROLFILE NAME
}
{ TO 'filename' | CLEAR }
| cfauConf
};
deviceCon::=
{ DEFAULT DEVICE TYPE { TO deviceSpecifier | CLEAR }
| DEVICE TYPE deviceSpecifier { PARALLELISM integer | CLEAR }
| [AUXILIARY] CHANNEL [integer] DEVICE TYPE deviceSpecifier
{ allocOperandList | CLEAR }
}
allocOperandList::=
{ PARMS [=] 'channel_parms'
| FORMAT [=] 'format_string' [, 'format_string']...
| { MAXPIECESIZE [=] integer | RATE [=] integer } [ K | M | G ]
.
.
.
}...
connectStringSpec::=
['] [userid] [/ [password]] [@net_service_name] [']
backupConf::=
{ RETENTION POLICY { TO { RECOVERY WINDOW OF integer DAYS
| REDUNDANCY [=] integer
| NONE
}
| CLEAR
}
| MAXSETSIZE { TO { integer [ K | M | G ]
| UNLIMITED
}
| CLEAR
}
| { ARCHIVELOG | DATAFILE }
BACKUP COPIES FOR DEVICE TYPE deviceSpecifier
{ TO integer | CLEAR }
| BACKUP OPTIMIZATION { ON | OFF | CLEAR }
| EXCLUDE FOR TABLESPACE tablespace_name [CLEAR]
}
cfauConf::==
CONTROLFILE AUTOBACKUP
{ ON
| OFF
| CLEAR
| FORMAT FOR DEVICE TYPE deviceSpecifier { TO 'format string' | CLEAR }
}
-----------------------------------COPY
Makes image copies of database files, archived logs, backups, and copies.
COPY [copy_option [copy_option]...]
{ copy_inputfile TO
{ AUXNAME | 'filename' [copy_option [copy_option]...] }
[, copy_inputfile TO
{ AUXNAME | 'filename' [copy_option [copy_option]...] }
]...
};
copy_option::=
{ TAG [=] ['] tag_name [']
| LEVEL [=] integer
| keepOption
.
.
.
}
copy_inputfile::=
{ DATAFILE datafileSpec
| DATAFILECOPY { 'filename' | TAG [=] ['] tag_name ['] }
| ARCHIVELOG 'filename'
| CURRENT CONTROLFILE [FOR STANDBY]
| CONTROLFILECOPY { 'filename' | TAG [=] ['] tag_name ['] }
}
-----------------------------------CROSSCHECK
Checks backup pieces, proxy copies, and disk copies to determine whether
they exist.
CROSSCHECK
{
{ BACKUP [OF listObjList]
| COPY [OF listObjList]
| archivelogRecordSpecifier
} [maintQualifier [maintQualifier]...]
| recordSpec [DEVICE TYPE deviceSpecifier [, deviceSpecifier]...]
};
listObjList::=
[ DATAFILE datafileSpec [, datafileSpec]...
| TABLESPACE ['] tablespace_name ['] [, ['] tablespace_name [']]...
| archivelogRecordSpecifier
| DATABASE [SKIP TABLESPACE ['] tablespace_name ['] [, ['] tablespace_name
[']]...]
| CONTROLFILE
| SPFILE
]...
recordSpec::=
{ { BACKUPPIECE | PROXY }
{ 'media_handle' [, 'media_handle']...
| primary_key [, primary_key]...
| TAG [=] ['] tag_name [']
}
| BACKUPSET primary_key [, primary_key]...
| { CONTROLFILECOPY | DATAFILECOPY }
{ { primary_key [, primary_key]...
| 'filename' [, 'filename']...
}
| TAG [=] ['] tag_name ['] [, ['] tag_name [']]...
}
| ARCHIVELOG
{ primary_key [, primary_key]...
| 'filename' [, 'filename']...
}
}
datafileSpec
datafileSpec::=
{ 'filename'| integer }
-----------------------------------DELETE
Deletes backups and copies, updates their metadata records to status
DELETED in the control file, and removes their metadata from the recovery
catalog (if you use a catalog).
DELETE [FORCE] [NOPROMPT]
{ [EXPIRED]
{
{ BACKUP [OF listObjList]
| COPY [OF listObjList]
| archivelogRecordSpecifier
} [maintQualifier [maintQualifier]...]
| recordSpec [DEVICE TYPE deviceSpecifier [, deviceSpecifier]...]
}
| OBSOLETE [obsOperandList]
[DEVICE TYPE (deviceSpecifier [, deviceSpecifier]...]
};
obsOperandList::=
[ REDUNDANCY [=] integer | RECOVERY WINDOW OF integer DAYS | ORPHAN ]...
deviceSpecifier
deviceSpecifier::=
{ DISK | ['] media_device ['] }
-----------------------------------LIST
Lists the backups and copies recorded in the repository.
LIST
{ INCARNATION [OF DATABASE [['] database_name [']]]
| [EXPIRED]
{ listObjectSpec
[ maintQualifier | RECOVERABLE [untilClause] ]...
| recordSpec
}
};
listObjectSpec::=
{ BACKUP [OF listObjList] [listBackupOption]
| COPY [OF listObjList]
| archivelogRecordSpecifier
}
listObjectList::=
[ DATAFILE datafileSpec [, datafileSpec]...
| TABLESPACE ['] tablespace_name ['] [, ['] tablespace_name [']]...
| archivelogRecordSpecifier
| DATABASE [SKIP TABLESPACE ['] tablespace_name [']
[, ['] tablespace_name [']]...]
| CONTROLFILE
| SPFILE
]...
listBackupOption::=
[ [BY BACKUP] [VERBOSE]
| SUMMARY
| BY { BACKUP SUMMARY | FILE }
]
maintQualifier
{ TAG [=] ['] tag_name [']
| completedTimeSpec
| LIKE 'string_pattern'
| DEVICE TYPE deviceSpecifier [, deviceSpecifier]...
| BACKED UP integer TIMES TO DEVICE TYPE deviceSpecifier
}
-----------------------------------RECOVER
Performs media recovery on RMAN backups and copies.
RECOVER [DEVICE TYPE deviceSpecifier [, deviceSpecifier]...]
recoverObject [recoverOptionList];
recoverObject::=
{ DATABASE
[ untilClause
| [untilClause] SKIP [FOREVER] TABLESPACE
['] tablespace_name ['] [, ['] tablespace_name [']]...
]
| TABLESPACE ['] tablespace_name ['] [, ['] tablespace_name [']]...
| DATAFILE datafileSpec [, datafileSpec]...
}
recoverOptionList::=
{ DELETE ARCHIVELOG [MAXSIZE {integer [K | M | G]}]
| CHECK READONLY
| NOREDO
| { FROM TAG | ARCHIVELOG TAG } [=] ['] tag_name [']
.
.
.
}...
-----------------------------------REPORT
Reports on various RMAN features: which files need backups, which
backups are obsolete or unrecoverable, and which files are in the database.
REPORT
{ { NEED BACKUP [ { INCREMENTAL | DAYS } [=] integer
| REDUNDANCY [=] integer
| RECOVERY WINDOW OF integer DAYS)
]
| UNRECOVERABLE
}
reportObject
| SCHEMA [atClause]
| OBSOLETE [obsOperandList]
}
[ DEVICE TYPE deviceSpecifier [,deviceSpecifier]... ]
reportObject::=
[ DATAFILE datafileSpec [, datafileSpec]...
| TABLESPACE ['] tablespace_name ['] [, ['] tablespace_name [']]...
| DATABASE [SKIP TABLESPACE ['] tablespace_name ['] [, ['] tablespace_name
[']]...]
]
atClause::=
{ AT TIME [=] 'date_string'
| AT SCN [=] integer
| AT SEQUENCE [=] integer THREAD [=] integer
}
obsOperandList::=
[ REDUNDANCY [=] integer | RECOVERY WINDOW OF integer DAYS | ORPHAN ]...
-----------------------------------RESTORE
Restores RMAN backups and copies.
RESTORE
[(] restoreObject [(restoreSpecOperand [restoreSpecOperand]...] [)]...
[ CHANNEL ['] channel_id [']
| PARMS [=] 'channel_parms'
| FROM { BACKUPSET | DATAFILECOPY }
| untilClause
| FROM TAG [=] ['] tag_name [']
| VALIDATE
| DEVICE TYPE deviceSpecifier [, deviceSpecifier]...
.
.
.
]...;
restoreObject::=
{ CONTROLFILE [TO 'filename']
| DATABASE
[SKIP [FOREVER] TABLESPACE
['] tablespace_name ['] [, ['] tablespace_name [']]...
]
| DATAFILE datafileSpec [, datafileSpec]...
| TABLESPACE ['] tablespace_name ['] [, ['] tablespace_name [']]...
| archivelogRecordSpecifier
| SPFILE [TO [PFILE] 'filename']
}
restoreSpecOperand::=
{ CHANNEL ['] channel_id [']
| FROM TAG [=] ['] tag_name [']
| PARMS [=] 'channel_parms'
| FROM
{ AUTOBACKUP
[{ MAXSEQ | MAXDAYS } [=] integer)]...
| 'media_handle'
}
}
-----------------------------------RUN
Although you typically run commands at the RMAN prompt, you can also
include commands within a RUN command. This method is essential when
you want to run ALLOCATE CHANNEL or for some uses of the SET
command.
RUN
{
.
.
.
}
-----------------------------------SET
Creates settings that apply only to the current RMAN session.
SET { set_rman_option [;] | set_run_option; }
set_rman_option::=
{ ECHO { ON | OFF }
| DBID [=] integer
| CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE deviceSpecifier TO 'frmt_string'
set_run_option::=
{ NEWNAME FOR DATAFILE datafileSpec TO { 'filename' | NEW }
| ARCHIVELOG DESTINATION TO 'log_archive_dest'
| untilClause
| COMMAND ID TO 'string'
| CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE deviceSpecifier TO 'frmt_string'
.
.
.
}
-----------------------------------SHOW
Displays the currently enabled CONFIGURE commands.
SHOW
{ RETENTION POLICY
| [DEFAULT] DEVICE TYPE
| [AUXILIARY] CHANNEL [FOR DEVICE TYPE deviceSpecifier]
| MAXSETSIZE
| { DATAFILE | ARCHIVELOG } BACKUP COPIES
| BACKUP OPTIMIZATION
| SNAPSHOT CONTROLFILE NAME
| AUXNAME
| EXCLUDE
| CONTROLFILE AUTOBACKUP [FORMAT]
| ALL
};
------------------------------------untilClause
{ UNTIL TIME [=] 'date_string'
| UNTIL SCN [=] integer
| UNTIL SEQUENCE [=] integer THREAD [=] integer
}
No comments:
Post a Comment