RMAN命令详解
命令概述
当用RMAN执行各种操作时,它可以使用独立命令(Standalone Command)和作业命令(Job Command)两种类型的命令。
独立命令是指可以单独执行的命令,在RMAN中,除了SET和SWITCH等少数命令外,大部分命令都是可以单独执行的。如:
RMAN> backup format ‘/backup/nicholas/%d_%s.bak’ tablespace system;
作业命令是指以成组方式执行的命令,这些命令组成一个run模块,以脚本的方式被执行。当需要使用多个RMAN命令来完成某项任务时,应该以作业命令的方式执行。在RMAN中除了少数几个命令外,大部分命令都能用来构成命令模块。如:
RMAN> run{
2> allocate channel c1 type disk;
3> backup format '/backup/nicholas/%d_%s.bak' tablespace nicholas;
4> release channel c1;
5> }
在RMAN提示符下不仅可以运行RMAN命令,还可以执行DML语句。当运行DML语句时,必须以关键字sql开始:
RMAN> sql “create tablespace user02
2>datafile ‘’/opt/oracle/oradata/nicholas/users01.db’’ size 100m”
注意,如果SQL字符串包含单引号,则需要用两个单引号,并且SQL字符串需要用双引号引起来。否则只需要将SQL用单引号引起来即可。
当使用恢复目录存放RMAN资料库时,可以在恢复目录中建立存储脚本,执行必须将它们放在run块内运行。如:
RMAN> run{execute script recov_01;}
在RMAN中还可以运行操作系统命令,同样也要将这些OS命令放在run模块中,除了要用引号将命令引起来之外,还必须在要命令前加上host关键字。如:
RMAN> run {host 'ls -l $ORACLE_HOME';}
在产品数据库环境中使用RMAN时,最好将需要执行的命令或命令模块放在批处理文件中,由RMAN自动调用执行。同时,还可以使用log参数来保存日志信息。如:
[oracle@localhost ~]$ rman target sys/yk2009@nicholas nocatalog @scripts.scr log m.log
RMAN子句
allocOperandList
说明:
allocOperandList子句用于控制RMAN和数据库实例之间的通道。它主要应用在ALLOCATE CHANNEL、ALLOCATE CHANNEL FOR MAINTENANCE和CONFIGURE命令中。
语法结构:
allocOperandList子句包括以下选项:
CONNECT:指定连接字符串;
AUXILIARY FORMAT:在辅助实例上创建的镜像拷贝格式;
NEW:在由辅助实例的初始化参数DB_CREATE_FILE_DEST所指定的目录中创建一个新的镜像拷贝;
FORMAT:指定备份片的格式;
MAXOPENFILES:控制在BACKUP命令中可以同时打开的最大数据文件个数(默认值为8);
MAXPIECESIZE:指定备份片的最大尺寸;oracle登录命令
PARMS:指定磁带设备的通道参数;
RATE:指定每秒可以读取的最大字节数;
SEND:用于发送厂商特定的命令字符串。
示例:
1、为磁盘通道设置一个默认的备份格式
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT=‘/backup/Nicholas/%u.bak’
2、为数据库备份指定默认的位置和格式后进行备份。
RUN
{
ALLOCATE CHANNEL d1 DEVICE TYPE DISK FORMAT = '/disk1/bkup_%U';
BACKUP DATABASE;
}
3、备份时限制备份片的最大尺寸
RMAN> run {
2> ALLOCATE CHANNEL d1 DEVICE TYPE SBT MAXPIECESIZE 800M;
3> BACKUP DATABASE;
4> RELEASE CHANNEL d1;
5> }
archivelogRecordSpecifier
说明:
archivelogRecordSpecifier子句用于指定在RMAN操作中要使用的归档日志文件。
语法结构:
archivelogRecordSpecifier子句有以下几种选项:
ALL:使用所有的归档日志文件;
archlogRange:指定某一范围内的归档日志文件,范围可以通过时间、日志序列号和SC
N来定义。archlogRange子句的语法结构如下:
LIKE:使用符合文件名定义的归档日志文件。
示例:
1、备份所有归档日志
RMAN> BACKUP ARCHIVELOG ALL;
2、对指定序列号范围内的归档日志进行备份
RMAN> BACKUP ARCHIVELOG FROM SEQUENCE=84 UNTIL SEQUENCE=86;
3、对指定SCN范围内的归档日志进行备份
RMAN> BACKUP ARCHIVELOG SCN BETWEEN 10 AND 20;
4、对指定日期后所产生的归档日志进行备份
RMAN> BACKUP ARCHIVELOG FROM TIME ‘sysdate-1’;
completedTimeSpec
说明:
completedTimeSpec子句与RMAN维护命令LIST、CROSSCHECK和DELETE一起使用,用于指定在某个时间范围内完成的备份集或镜像。在COMPLETED子句中可以使用日期时间函数SYSDATE和TO_DATA。
语法格式:
在completedTimeSpec子句的参数中有下面几个时间段可供选择:
AFTER,在特定时间后完成的备份或镜像;
BEFORE,在特定时间前完成的备份或镜像;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。