rman target sys/oracle@db01 catalog rman/rman@db01
设置备份标记
backup database tag='full_bak1';
注:每个标记必须唯一,相同的标记可以用于多个备份只还原最新的备份。
RMAN> backup current controlfile tag='ctl_bak_180819';
设置备份集大小(一次备份的所有结果为一个备份集,要注意备份集大小)
backup database maxsetsize=100m tag='datafile1';
注:maxsetsize限定备份集的大小。所以必须大于数据库总数据文件的大小,否则会报错。
rman-06183: datafile or datafile copy larger than maxsetsize: file# 1 /data/oradata/system01.dbf
设置备份片大小(磁带或文件系统限制)
run {
allocate channel c1 type disk maxpicecsize 100m format '/backup/full_0_%u_%t';
backup database tag='full_0';
release channel c1;
}
可以在allocate子句中设定每个备份片的大小,以达到磁带或系统限制。
也可以在configure中设置备份片大小。
configure channel device type disk maxpiecesize 100 m;
configure channel device type disk clear;
使用rman来扫描数据库的物理/逻辑错误,并不执行实际备份。
backup validate database;
可以简单的使用具有tablespace 参数的backup 命令来执行一个表空间的备份操作:
Backup tablespace itpux;
如果同时要备份归档的重做日志,可以执行:
Backup tablespace itpux plus archivelog;
备份当前控制文件:
Backup tablespace users include current controlfile plus archivelog;
RMAN 允许使用带有datafile 参数的backup 命令来备份数据文件,
datafile 参数后面是要备份的文件名或数据文件号。
Backup datafile 5;
Backup datafile '/oracle/app/oradata/itpuxdb/itpux0.DBF';
Backup datafile '/oracle/app/oradata/itpuxdb/itpux0.DBF' plus archivelog;
归档日志备份
要备份所有的归档重做日志,可以用 backup archivelog all. 还可以备份指定范围内的归档的重做日志,这里有多个选项,包括时间,SCN或者重做日志序列。
Backup archivelog all;
Backup archivelog from time 'sysdate-1';
Backup archivelog from sequence 400;
Backup archivelog until sequence 400;
一旦备份完成,就可以使用RMAN的 delete input 选项来删除这些归档重做日志。
Backup archivelog all delete input;
Backup archivelog from sequence 400 delete input;
还可以使用backup 与until time 参数来确保归档重做日志在磁盘上保留一定的天数:
Backup archivelog all delete input until time 'sysdate-2';
也可以指示RMAN 备份归档的重做日志多个副本。 在下面的示例中,我们使用具有not backed up n times 参数的backup命令来确保至少备份3次重做日志,并且不会再次备份已经备份超过3次的归档重做日志。
Backup archivelog not backed up 3 times;
注: not backed up 参数和 delete input 参数相互排斥,不管归档重做日志的备份次数为多少,delete input 参数都会删除这个归档的重做日志。
数据库,表空间和数据文件的映像副本
Backup 命令支持数据库映像副本的创建。 RMAN可以通过backup as copy命令生成映像副本。
RMAN>backup as copy database;
表空间的映像副本创建:
RMAN>backup as copy tablespace Users;
数据文件的映像副本:
Backup as copy datafile 1;
Backup as copy datafile '/oracle/app/oradata/itpuxdb/itpux0.dbf';
控制文件副本
备份控制文件:
Backup current controlfile;
创建控制文件的副本:
Backup as copy current controlfile;
创建用于备份数据库的控制文件:
Backup as copy standby controlfile;
在创建时还可以指定别名:
Backup as copy standby controlfile format 'D:/backup/controlfilecopy.ctl';
基本备份
Backup incremental level=0 database;
差异备份
backup incremental level=1 database;
累积备份
backup incremental level =2 cumulative database;
增量备份选项
Oracle 不仅允许执行数据库的增量备份,还允许执行表空间,数据文件以及数据库文件副本的增量备份操作。 控制文件,归档重做日志以及备份集都不能生成增量备份。 此外,还可以在执行增量备份操作时同时备份归档的重做日志。
Backup incremental level=0 tablespace users;
Backup incremental level=1 tablespace users;
Backup incremental level=0 datafile 4;
Backup incremental level=1 datafile 4;
Backup incremental level=1 database plus archivelog;
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




