1、REPORT
一、报告目标数据库的物理结构
RMAN>REPORT SCHEMA数据库
二、报告须要备份的数据文件spa
在执行备份以前,经常须要取得须要备份的数据文件信息,经过执行REPORT NEED BACKUP命令,能够列出须要备份的数据文件。当使用REPORT NEED BACKUP命令时,能够带有INCREMENTAL、DAYS、REDUNDANCY、RECOVERY WINDOW四个选项。
(1)报告须要转储的增量备份超出特定个数的数据文件
当恢复数据文件时,须要转储数据文件备份,而后应用归档日志执行恢复。若是备份数据文件采用了增量备份和累积备份策略,那么在转储数据文件时依次转储 0、一、2..级别的增量备份,转储的数据文件备份越多,恢复时间越长,下面以报告恢复数据文件须要转储的增量备份个数超过3次的数据文件为例:
RMAN>REPORT NEED BACKUP INCREMENTAL 3日志
其中file用于标识数据文件的编号,Incrementals用于标识须要转储的备份文件个数,Name用于标识数据文件的名称,若是某个文件出现转储的次数大于3次,应该在该数据文件上执行彻底备份或增量0级备份。对象
(2)报告特定天数未备份的数据文件
当恢复数据文件时,在转储了所需的数据文件备份以后,会应用从备份点开始的全部归档日志。须要应用的归档日志越多,恢复时间越长,为了减小恢复时间,应该制定备份数据文件的时间周期。rem
USERS表空间上3天未备份的数据文件
RMAN>REPORT NEED BACKUP DAYS 3 TABLESPACE USERS;get
数据库内10天以上未备份的数据文件
REPORT NEED BACKUP DAYS 10同步
(3)报告低于特定备份次数的数据文件
恢复数据文件时,须要转储数据文件备份。当数据文件出现介质失败,而且数据文件备份也出现问题时,会致使数据文件没法恢复。在制定备份册落时,为了防止数据文件备份出现问题,应该为数据文件保留多个备份,但某些文件的备份次数过少时,须要增长备份数量。
RMAN>REPORT NEED BACKUP REDUNDANCY 2 DATABASE;table
(4)报告在恢复时间窗口内未备份的数据文件
当恢复数据文件时,在转储了所需的数据文件备份以后,会应用从备份点开始的全部归档日志。须要应用的归档日志越多,恢复时间越长。经过使用恢复时间窗口,能够将恢复操做须要应用的归档日志控制在特定时间范围内。下面以报告超过恢复窗口6天的未备份数据文件为例,说明使用DAYS选项的方法:
RMAN>REPORT NEED BACKUP RECOVERY WINDOW OF 6 DAYS配置
DAYS用于标识恢复数据文件须要应用几天前的归档日志。date
三、报告陈旧备份
当使用RMAN执行恢复操做时,RMAN会自动转储最近的备份文件,而后应用该备份文件以后的归档日志。若是在特定数据文件上进行了屡次备份,那么能够删除早期备份,经过使用REPORT OBSOLETE命令,能够报告陈旧备份。下例报告备份次数超过2次的陈旧备份:
RMAN>REPORT OBSOLETE REDUNDANCY 2;
四、报告不可恢复的数据文件
当使用NOLOGGING选项装载了数据库以后,由于数据变化没有被记录到归档日志中,因此会致使过去的数据文件备份不能恢复当前数据文件。为防止数据文件不能恢复,应该备份该数据文件,经过以下语句,能够查看数据库全部不可恢复的数据文件:
RMAN>REPORT UNRECOVERABLE;
2、LIST
一、列出数据文件备份集
RMAN>LIST BACKUP OF TABLESPACE USER01;
二、列出控制文件备份集
RMAN>LIST BACKUP OF CONTROLFILE;
三、列出归档日志备份集
RMAN>LIST BACKUP OF ARCHIVELOG ALL;
四、列出SPFILE备份集
RMAN>LIST BACKUP OF SPFILE;
五、列出数据文件映像副本
可用LIST COPY OF DATABASE列出全部数据文件的映像副本;用LIST COPY OF TABLESPACE列出特定表空间数据文件的映像副本;用LIST COPY OF DATAFILE列出特定数据文件的映像副本。
RMAN>LIST COPY OF DATAFILE 5
六、列出控制文件映像副本
RMAN>LIST COPY OF CONTROLFILE
七、列出归档日志映像副本。
RMAN>LIST COPY OF ARCHIVELOG ALL;
八、列出数据库副本
每次使用RESETLOGS选项打开数据库以后都会生成一个新的数据库副本。
RMAN>LIST INCARNATION OF DATABASE;
3、CROSSCHECK
该命令用于核对磁盘和磁带上的备份文件,以确保RMAN资料库与备份文件保持同步。该命令只会检查RMAN资料库所记载的备份文件。当执行CROSSCHECK命令时,若是资料库记录不匹配于备份文件的物理状态,那么该命令会更新资料库记录的状态信息。当使用CROSSCHECK命令核对备份文件以后,备份文件的状态会包括AVAILABLE、UNAVAILABLE和EXPIRED三种,若是备份文件处于EXPIRED状态,则说明物理文件已经被手工删除或者损坏。注意,若是备份文件处于EXPIRED状态,应该使用DELETE命令删除该备份文件。AVAILABLE与UNAVAILABLE是能够手工进行设置切换的要是备份集处于UNAVAILABLE状态,当使用RMAN恢复时,RMAN不会考虑使用这个备份集。
一、核对全部备份集
RMAN>CROSSCHECK BACKUP;
二、核对全部数据文件的备份集
RMAN>CROSSCHECK BACKUP OF DATABASE;
三、核对特定表空间的备份集
RMAN>CROSSCHECK BACKUP OF TABLESPACE SYSTEM;
四、核对特定数据文件的备份集
RMAN>CROSSCHECK BACKUP OF DATAFILE 4;
五、核对控制文件的备份集
RMAN>CROSSCHECK BACKUP OF CONTROLFILE;
六、核对SPFILE的备份集
RMAN>CROSSCHECK BACKUP OF SPFILE;
七、核对归档日志的备份集
RMAN>CROSSCHECK BACKUP OF ARCHIVELOG SEQUENCE 3;
八、核对全部映像副本
RMAN>CROSSCHECK COPY;
九、核对全部数据文件的映像副本
RMAN>CROSSCHECK COPY OF DATABASE;
十、核对特定表空间的映像副本
RMAN>CROSSCHECK COPY OF TABLESPACE USERS;
十一、核对特定数据文件的映像副本
RMAN>CROSSCHECK COPY OF DATAFILE 4;
十二、核对控制文件的映像副本
RMAN>CROSSCHECK COPY OF CONTROLFILE;
1三、核对归档日志的映像副本
RMAN>CROSSCHECK COPY OF ARCHIVELOG SEQUENCE 4;
4、DELETE
该命令用于删除RMAN备份记录及相应的物理文件
一、删除陈旧备份
RMAN>DELETE OBSOLETE;
二、删除EXPIRED备份集
当使用OS命令删除了备份集对应的备份片文件后,若是执行CROSSCHECK命令核对备份集,那么会将该备份集标记为EXPIRED状态。NOPROMPT表示删除时不须要有任何提示信息。
RMAN>DELETE NOPROMPT EXPIRED BACKUP;
三、删除EXPIRED副本
RMAN>DELETE NOPROMPT EXPIRED COPY;
四、删除特定备份集
RMAN>DELETE NOPROMPT BACKUPSET 19;
五、删除特定备份片
RMAN>DELETE NOPROMPT BACKUPPIECE 'D:/BACKUP/DEMO_18.BAK';
六、删除全部备份集
RMAN>DELETE NOPROMPT BACKUP;
七、删除特定映像副本
RMAN>DELETE NOPROMPT DATAFILECOPY 'D:/BACKUP/DEM0_19.BAK';
八、删除全部映像副本
RMAN>DELETE NOPROMPT COPY;
九、在备份后删除输入对象
当使用BACKUP命令备份归档日志或备份集时,在备份完成以后能够删除原有输入对象,示例以下:
RMAN>BACKUP ARCHIVELOG ALL DELETE INPUT;
RMAN>BACKUP BACKUPSET 22 FORMAT='D:/BACKUP/%u.BAK' DELETE INPUT;
5、CHANGE
一、改变备份集状态
可用CHANGE BACKUPSET .. UNAVAILABLE/AVAILABLE来改变一个备份集的状态。
RMAN>CHANGE BACKUPSET 22 UNAVAILABLE
二、改变映像副本状态
数据文件:CHANGE DATAFILECOPY .. AVAILABLE/UNAVAILABLE
控制文件:CHANGE CONTROLFILECOPY .. AVAILABLE/UNAVAILABLE
归档日志:CHANGE ARCHIVELOG .. AVAILABLE/UNAVAILABLE
例如:
RMAN>CHANGE DATAFILECOPY 'D:/BACKUP/DEMO_37.BAK' UNAVAILABLE;
三、创建长期备份
长期备份是指被长期保留的备份文件(黄金备份),使用长期备份的目的是为了能够将数据库恢复到过去的特定时间点。当设定了长期备份以后,RMAN会从设备冗余策略中免除该备份文件,也就是说,长期备份文件不会被标记为陈旧备份。
命令:CHANGE .. KEEP/NOKEEP
(1)使备份集156永久保留
RMAN>CHANGE BACKUPSET 156 KEEP FOREVER LOGS;
(2)使备份集198保留60天
RMAN>CHANGE BACKUPSET 198 KEEP UNTIL TIME 'SYSDATE+60' LOGS;
(3)免除备份集156的保留期限
RMAN>CHANGE BACKUPSET 156 NOKEEP;
使用RMAN进行备份和恢复的经常使用命令
===================
链接到目标数据库(不用恢复目录数据库)
rman target / nocatalog
显示rman配置
RMAN> show all;
====================
报告目标数据库的物理结构
RMAN> report schema;
报告陈旧备份
RMAN> report obsolete;
报告不可恢复的数据文件
RMAN> report unrecoverable;
列出备份信息
RMAN> list backup;
RMAN> list backup of database;
RMAN> list backup of tablespace table_name;
RMAN> list backup of controlfile;
RMAN> list backup of spfile;
RMAN> list backupset id;
========================
校验备份信息:
RMAN> crosscheck backup;
RMAN> crosscheck backup of database;
RMAN> crosscheck backup of tablespace system;
RMAN> crosscheck backup of controlfile;
RMAN> crosscheck backup of spfile;
========================
删除备份
RMAN> delete obsolete; -- 删除陈旧备份
RMAN> delete expired backup;
RMAN> delete backupset id;
RMAN> delete backup; -- 删除全部备份
=========================
改变备份集的状态
RMAN> change backupset id unavailable; -- available
改成长期备份
RMAN> change backupset id keep forever logs;
RMAN> change backupset id keep until time 'sysdate+60' logs;
RMAN> change backupset id nokeep;