RMAN List和report 命令
程序员文章站
2022-05-07 21:53:28
...
LIST 命令
使用RMAN LIST 命令显示有关资料档案库中记录的备份集、代理副本和映像副本的
信息。使用此命令可列出:
• RMAN 资料档案库中状态不是AVAILABLE 的备份和副本
• 可用的且可以用于还原操作的数据文件备份和副本
• 备份集和副本,其中包含指定数据文件列表或指定表空间的备份
• 包含指定名称或范围的所有归档日志备份的备份集和副本
• 由标记、完成时间、可恢复性或设备限制的备份集和副本
• 指定数据库或资料档案库已知的所有数据库的原型
• 恢复目录中的存储脚本
要使用LIST 命令,必须连接到目标数据库。如果在NOCATALOG 模式下连接,则必须
装载目标数据库。如果使用恢复目录连接,则必须启动目标实例,但不需要装载。
可以控制输出的组织方式(BY BACKUP 或BY FILE)以及输出的详细程度(VERBOSE
或SUMMARY)。
1.1 列出对应物
List incarnation 命令为用户提供了目标数据库的每个数据库对应物列表。 如果有必要,可以使用这个列表的信息将数据库恢复到执行最后一条resetlogs命令前的某个时间点。
RMAN> list incarnation;
使用目标数据库控制文件替代恢复目录
数据库原型列表
DB 关键字 Inc 关键字 DB 名 DB ID STATUS 重置 SCN 重置时间
------- ------- -------- ---------------- --- ---------- ----------
1 1 ORCL 1247395743 PARENT 1 02-4月 -10
2 2 ORCL 1247395743 PARENT 940976 21-5月 -10
3 3 ORCL 1247395743 ORPHAN 8426617 06-7月 -10
4 4 ORCL 1247395743 CURRENT 8554968 06-7月 -10
Oracle 10g中新增的列是status,该列列出的是对应物的状态,该状态表明对应物是就的对应物(parent),当前对应物(current),和孤立的对应物(ORPHAN,即在resetlogs命令之后进行恢复)。
重置SCN(Reset SCN)和重置时间(Reset Time)主要说明创建数据库对应物的时间,这也是第一个条目的Reset SCN为1的原因。 该列对使用resetlogs命令进行恢复有用,并使得能较容易的恢复到前面的对应物。
注意一点,使用恢复目录和不使用恢复目录输出是有差异的。 在Inc Key 上有出入。
1.2 列出备份
List命令提供了许多不同的选项来报告数据库备份和副本的状态。
1.2.1 概述可用的备份
RMAN> list backup summary;
备份列表
===============
关键字 TY LV S 设备类型 完成时间 段数 副本数 压缩标记
------- -- -- - ----------- ---------- ------- ------- ---------- ---
113 B F A SBT_TAPE 18-6月 -10 1 1 NO TAG20100618T085926
138 B F A DISK 21-6月 -10 1 1 YES TAG20100621T233122
219 B F A DISK 22-6月 -10 1 1 NO TAG20100622T212749
231 B 1 A DISK 23-6月 -10 1 1 NO ORCL
1072 B F A DISK 06-7月 -10 1 1 NO TAG20100706T134705
在这个示例中我们可以得到一下信息:
KEY(关键字): 表示备份集键
TY(类型)和LV列表示列的备份类型:
B[Backup] 表示备份
F[Full] 表示完全备份
A[Archivelog]
0和1 表示增量备份[Incremental backup]
S 列说明备份的状态: A 表示Available,X 表示Expired.
Device Type: 说明备份的设备是磁带还是磁盘
大多数list命令都可以在末尾使用summary参数,如:
List backup of database summary;
List expired backup of archivelog all summary;
List backup of tablespace users summary;
1.2.2 按备份类型列出备份
可以使用list backup by file 命令列出每个备份集和备份集片。它可以按数据文件备份,归档日志备份,控制文件和spfile文件备份列出备份信息。 如:
RMAN> list backup by file;
控制文件备份列表
============================
CF Ckp SCN Ckp 时间 BS 关键字 S 段数 副本数 压缩标记
---------- ---------- ------- - ------- ------- ---------- ---
8625387 06-7月 -10 1072 A 1 1 NO TAG20100706T134705
8555238 06-7月 -10 1000 A 1 1 NO TAG20100706T091808
SPFILE 备份的列表
======================
修改时间 BS 关键字 S 段数 副本数 压缩标记
---------- ------- - ------- ------- ---------- ---
06-7月 -10 1072 A 1 1 NO TAG20100706T134705
06-7月 -10 1000 A 1 1 NO TAG20100706T091808
27-6月 -10 732 A 1 1 NO TAG20100628T110902
21-6月 -10 231 A 1 1 NO ORCL
21-6月 -10 219 A 1 1 NO TAG20100622T212749
21-6月 -10 138 A 1 1 YES TAG20100621T233122
17-6月 -10 113 A 1 1 NO TAG20100618T085926
1.2.3 其他备份信息
如果想要查看RMAN 更多的信息,可以使用list backup命令。该命令可以提供所生成备份(包括备份集,归档的重做日志备份,控制文件备份以及服务器参数文件备份)的详细信息。
RMAN> list backup;
备份集列表
===================
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
113 Full 16.00M SBT_TAPE 00:00:05 18-6月 -10
BP 关键字: 116 状态: AVAILABLE 已压缩: NO 标记: TAG20100618T085926
句柄: 07lghd6e_1_1 介质: /,07lghd6e_1_1
包含的 SPFILE: 修改时间: 17-6月 -10
SPFILE db_unique_name: ORCL
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
138 Full 1.03M DISK 00:00:02 21-6月 -10
BP 关键字: 142 状态: AVAILABLE 已压缩: YES 标记: TAG20100621T233122
段名:D:/APP/ADMINISTRATOR/FLASH_RECOVERY_AREA/ORCL/BACKUPSET/2010_06_21/O1_MF_NC
SNF_TAG20100621T233122_61Z1KVPK_.BKP
包含的 SPFILE: 修改时间: 21-6月 -10
SPFILE db_unique_name: ORCL
1.2.4 列出适合恢复的备份
如果需要查看能够用于还原和恢复数据库的所有数据文件备份或副本,则可以使用list recoverable命令。 List 命令提供了状态为Available的,可用于还原数据库的所有备份列表(该列表值用于当前的对应物),其中包括备份,映像副本和增量备份。 如果增量备份没有有效的父备份,它就不会包含在备份中。
RMAN> list recoverable backup of database;
1.2.5 列出到期的备份
执行list expired backup命令可以列出到期的备份,该命令也可以获得到期的表空间和数据文件的备份列表,如果插入正确的关键字(如: list expired backup of datafile 3 或者 list expired backup of archivelog all),则可以获得到期的归档日志备份和控制文件/spfile文件的自动备份列表。
RMAN> list expired backup;
1.2.6 按表空间名和数据文件号列出备份
执行list backup of tablespace 或者list backup of datafile 命令可以列出指定表空间或数据文件的输出:
RMAN> list backup of tablespace users;
RMAN> list backup of datafile 3;
1.2.7 列出归档日志备份
RMAN 提供了列出归档日志备份的几种选项。 如果要得到当前存在的归档日志(并不意味着它们已经备份)的完整概述,可以使用list archivelog all命令:
RMAN> list archivelog all;
如果想要得到更详细的报告,可以使用: list backup of archivelog all
RMAN> list backup of archivelog all;
如果只想查看到期的备份集,可以执行list expired backup of archivelog all;
RMAN> list expired backup of archivelog all;
还可以设定时间或日志序列号来限制报告中显示的内容,如:
RMAN> list expired backup of archivelog until sequence 3;
RMAN> list expired backup of archivelog until time "to_date('2010-7-6','yyyy-mm-dd')";
1.2.8 列出控制文件和服务器参数文件备份
List backup of controlfile命令可以向用户提供控制文件备份的列表,list backup of spfile 可以提供服务器参数文件备份的列表。
RMAN> list backup of controlfile;
RMAN> list backup of spfile;
1.3 列出映像副本
List 命令也可以用来判断数据库映像副本的状态,如:
RMAN> list copy;
1.3.1 列出数据文件副本
可以使用list copy of database命令生成所有数据文件副本的概述列表:
RMAN> list copy of database;
也可以使用list copy of tablespace 或者list copy of datafile 命令来显示表空间或数据文件的副本。
RMAN> list copy of tablespace users;
RMAN> list copy of datafile 1;
1.3.2 列出归档的重做日志副本
可以用list copy of archivelog copies命令查看归档的重做日志副本,如:
RMAN> list copy of archivelog all;
也可以按照时间,序列或者数据库的SCN 列出特定的归档的重做日志副本,如:
RMAN> list copy of archivelog from sequence 1;
RMAN> list copy of archivelog from sequence 1 until sequence 22;
1.3.3 列出控制文件副本
RMAN 可以通过执行list controlfile copy命令来显示控制文件副本。
RMAN> list copy of controlfile;
REPORT 命令
使用此命令,可以更详细地分析RMAN 资料档案库中的信息。
可以生成报告来回答各种问题,如:
• 数据库的结构是什么?
RMAN> REPORT SCHEMA;
• 哪些文件需要备份?
RMAN> REPORT NEED BACKUP ...;
• 哪些备份可以删除(即,已作废)?
RMAN> REPORT OBSOLETE;
• 哪些文件因不可恢复的操作而无法恢复?
RMAN> REPORT UNRECOVERABLE ...;
REPORT NEED BACKUP 命令
使用REPORT NEED BACKUP 命令标识需要备份的所有数据文件。报告假定还原时会
使用最近的备份。
包含四个选项:
• 增量:需输入一个整数,用于指定恢复过程中应还原的增量备份的最大数目。如果
数据文件的完全恢复需要的增量备份数多于指定数目,则数据文件需要新的完全备
份。例如,要报告需要三个或更多增量备份来进行恢复的文件:
RMAN > REPORT NEED BACKUP incremental 3 database;
• 天数:需输入一个整数,用于指定自上次文件的完全备份或增量备份以来的最大
天数。如果最新的备份等于或大于此数值,则该文件需要进行备份。
例如,要报告三天以来尚未进行备份的系统文件:
RMAN > REPORT NEED BACKUP days 3 tablespace system;
• 冗余:需输入一个整数,用于指定视为必需的最低冗余级别。例如,如果不具有
两个或更多个备份,则冗余级别2 需要进行备份。
• 恢复窗口:一个时间窗口,RMAN 应能在该窗口中恢复数据库
使用RMAN LIST 命令显示有关资料档案库中记录的备份集、代理副本和映像副本的
信息。使用此命令可列出:
• RMAN 资料档案库中状态不是AVAILABLE 的备份和副本
• 可用的且可以用于还原操作的数据文件备份和副本
• 备份集和副本,其中包含指定数据文件列表或指定表空间的备份
• 包含指定名称或范围的所有归档日志备份的备份集和副本
• 由标记、完成时间、可恢复性或设备限制的备份集和副本
• 指定数据库或资料档案库已知的所有数据库的原型
• 恢复目录中的存储脚本
要使用LIST 命令,必须连接到目标数据库。如果在NOCATALOG 模式下连接,则必须
装载目标数据库。如果使用恢复目录连接,则必须启动目标实例,但不需要装载。
可以控制输出的组织方式(BY BACKUP 或BY FILE)以及输出的详细程度(VERBOSE
或SUMMARY)。
1.1 列出对应物
List incarnation 命令为用户提供了目标数据库的每个数据库对应物列表。 如果有必要,可以使用这个列表的信息将数据库恢复到执行最后一条resetlogs命令前的某个时间点。
RMAN> list incarnation;
使用目标数据库控制文件替代恢复目录
数据库原型列表
DB 关键字 Inc 关键字 DB 名 DB ID STATUS 重置 SCN 重置时间
------- ------- -------- ---------------- --- ---------- ----------
1 1 ORCL 1247395743 PARENT 1 02-4月 -10
2 2 ORCL 1247395743 PARENT 940976 21-5月 -10
3 3 ORCL 1247395743 ORPHAN 8426617 06-7月 -10
4 4 ORCL 1247395743 CURRENT 8554968 06-7月 -10
Oracle 10g中新增的列是status,该列列出的是对应物的状态,该状态表明对应物是就的对应物(parent),当前对应物(current),和孤立的对应物(ORPHAN,即在resetlogs命令之后进行恢复)。
重置SCN(Reset SCN)和重置时间(Reset Time)主要说明创建数据库对应物的时间,这也是第一个条目的Reset SCN为1的原因。 该列对使用resetlogs命令进行恢复有用,并使得能较容易的恢复到前面的对应物。
注意一点,使用恢复目录和不使用恢复目录输出是有差异的。 在Inc Key 上有出入。
1.2 列出备份
List命令提供了许多不同的选项来报告数据库备份和副本的状态。
1.2.1 概述可用的备份
RMAN> list backup summary;
备份列表
===============
关键字 TY LV S 设备类型 完成时间 段数 副本数 压缩标记
------- -- -- - ----------- ---------- ------- ------- ---------- ---
113 B F A SBT_TAPE 18-6月 -10 1 1 NO TAG20100618T085926
138 B F A DISK 21-6月 -10 1 1 YES TAG20100621T233122
219 B F A DISK 22-6月 -10 1 1 NO TAG20100622T212749
231 B 1 A DISK 23-6月 -10 1 1 NO ORCL
1072 B F A DISK 06-7月 -10 1 1 NO TAG20100706T134705
在这个示例中我们可以得到一下信息:
KEY(关键字): 表示备份集键
TY(类型)和LV列表示列的备份类型:
B[Backup] 表示备份
F[Full] 表示完全备份
A[Archivelog]
0和1 表示增量备份[Incremental backup]
S 列说明备份的状态: A 表示Available,X 表示Expired.
Device Type: 说明备份的设备是磁带还是磁盘
大多数list命令都可以在末尾使用summary参数,如:
List backup of database summary;
List expired backup of archivelog all summary;
List backup of tablespace users summary;
1.2.2 按备份类型列出备份
可以使用list backup by file 命令列出每个备份集和备份集片。它可以按数据文件备份,归档日志备份,控制文件和spfile文件备份列出备份信息。 如:
RMAN> list backup by file;
控制文件备份列表
============================
CF Ckp SCN Ckp 时间 BS 关键字 S 段数 副本数 压缩标记
---------- ---------- ------- - ------- ------- ---------- ---
8625387 06-7月 -10 1072 A 1 1 NO TAG20100706T134705
8555238 06-7月 -10 1000 A 1 1 NO TAG20100706T091808
SPFILE 备份的列表
======================
修改时间 BS 关键字 S 段数 副本数 压缩标记
---------- ------- - ------- ------- ---------- ---
06-7月 -10 1072 A 1 1 NO TAG20100706T134705
06-7月 -10 1000 A 1 1 NO TAG20100706T091808
27-6月 -10 732 A 1 1 NO TAG20100628T110902
21-6月 -10 231 A 1 1 NO ORCL
21-6月 -10 219 A 1 1 NO TAG20100622T212749
21-6月 -10 138 A 1 1 YES TAG20100621T233122
17-6月 -10 113 A 1 1 NO TAG20100618T085926
1.2.3 其他备份信息
如果想要查看RMAN 更多的信息,可以使用list backup命令。该命令可以提供所生成备份(包括备份集,归档的重做日志备份,控制文件备份以及服务器参数文件备份)的详细信息。
RMAN> list backup;
备份集列表
===================
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
113 Full 16.00M SBT_TAPE 00:00:05 18-6月 -10
BP 关键字: 116 状态: AVAILABLE 已压缩: NO 标记: TAG20100618T085926
句柄: 07lghd6e_1_1 介质: /,07lghd6e_1_1
包含的 SPFILE: 修改时间: 17-6月 -10
SPFILE db_unique_name: ORCL
BS 关键字 类型 LV 大小 设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
138 Full 1.03M DISK 00:00:02 21-6月 -10
BP 关键字: 142 状态: AVAILABLE 已压缩: YES 标记: TAG20100621T233122
段名:D:/APP/ADMINISTRATOR/FLASH_RECOVERY_AREA/ORCL/BACKUPSET/2010_06_21/O1_MF_NC
SNF_TAG20100621T233122_61Z1KVPK_.BKP
包含的 SPFILE: 修改时间: 21-6月 -10
SPFILE db_unique_name: ORCL
1.2.4 列出适合恢复的备份
如果需要查看能够用于还原和恢复数据库的所有数据文件备份或副本,则可以使用list recoverable命令。 List 命令提供了状态为Available的,可用于还原数据库的所有备份列表(该列表值用于当前的对应物),其中包括备份,映像副本和增量备份。 如果增量备份没有有效的父备份,它就不会包含在备份中。
RMAN> list recoverable backup of database;
1.2.5 列出到期的备份
执行list expired backup命令可以列出到期的备份,该命令也可以获得到期的表空间和数据文件的备份列表,如果插入正确的关键字(如: list expired backup of datafile 3 或者 list expired backup of archivelog all),则可以获得到期的归档日志备份和控制文件/spfile文件的自动备份列表。
RMAN> list expired backup;
1.2.6 按表空间名和数据文件号列出备份
执行list backup of tablespace 或者list backup of datafile 命令可以列出指定表空间或数据文件的输出:
RMAN> list backup of tablespace users;
RMAN> list backup of datafile 3;
1.2.7 列出归档日志备份
RMAN 提供了列出归档日志备份的几种选项。 如果要得到当前存在的归档日志(并不意味着它们已经备份)的完整概述,可以使用list archivelog all命令:
RMAN> list archivelog all;
如果想要得到更详细的报告,可以使用: list backup of archivelog all
RMAN> list backup of archivelog all;
如果只想查看到期的备份集,可以执行list expired backup of archivelog all;
RMAN> list expired backup of archivelog all;
还可以设定时间或日志序列号来限制报告中显示的内容,如:
RMAN> list expired backup of archivelog until sequence 3;
RMAN> list expired backup of archivelog until time "to_date('2010-7-6','yyyy-mm-dd')";
1.2.8 列出控制文件和服务器参数文件备份
List backup of controlfile命令可以向用户提供控制文件备份的列表,list backup of spfile 可以提供服务器参数文件备份的列表。
RMAN> list backup of controlfile;
RMAN> list backup of spfile;
1.3 列出映像副本
List 命令也可以用来判断数据库映像副本的状态,如:
RMAN> list copy;
1.3.1 列出数据文件副本
可以使用list copy of database命令生成所有数据文件副本的概述列表:
RMAN> list copy of database;
也可以使用list copy of tablespace 或者list copy of datafile 命令来显示表空间或数据文件的副本。
RMAN> list copy of tablespace users;
RMAN> list copy of datafile 1;
1.3.2 列出归档的重做日志副本
可以用list copy of archivelog copies命令查看归档的重做日志副本,如:
RMAN> list copy of archivelog all;
也可以按照时间,序列或者数据库的SCN 列出特定的归档的重做日志副本,如:
RMAN> list copy of archivelog from sequence 1;
RMAN> list copy of archivelog from sequence 1 until sequence 22;
1.3.3 列出控制文件副本
RMAN 可以通过执行list controlfile copy命令来显示控制文件副本。
RMAN> list copy of controlfile;
REPORT 命令
使用此命令,可以更详细地分析RMAN 资料档案库中的信息。
可以生成报告来回答各种问题,如:
• 数据库的结构是什么?
RMAN> REPORT SCHEMA;
• 哪些文件需要备份?
RMAN> REPORT NEED BACKUP ...;
• 哪些备份可以删除(即,已作废)?
RMAN> REPORT OBSOLETE;
• 哪些文件因不可恢复的操作而无法恢复?
RMAN> REPORT UNRECOVERABLE ...;
REPORT NEED BACKUP 命令
使用REPORT NEED BACKUP 命令标识需要备份的所有数据文件。报告假定还原时会
使用最近的备份。
包含四个选项:
• 增量:需输入一个整数,用于指定恢复过程中应还原的增量备份的最大数目。如果
数据文件的完全恢复需要的增量备份数多于指定数目,则数据文件需要新的完全备
份。例如,要报告需要三个或更多增量备份来进行恢复的文件:
RMAN > REPORT NEED BACKUP incremental 3 database;
• 天数:需输入一个整数,用于指定自上次文件的完全备份或增量备份以来的最大
天数。如果最新的备份等于或大于此数值,则该文件需要进行备份。
例如,要报告三天以来尚未进行备份的系统文件:
RMAN > REPORT NEED BACKUP days 3 tablespace system;
• 冗余:需输入一个整数,用于指定视为必需的最低冗余级别。例如,如果不具有
两个或更多个备份,则冗余级别2 需要进行备份。
• 恢复窗口:一个时间窗口,RMAN 应能在该窗口中恢复数据库