技术开发 频道

ORCLE 数据库备份与恢复之四:RMAN(备份与恢复管理器)

4.5. RMAN 查看信息List Report

 4.5.1  复目录相关视图
 
 恢复目录本身有一组视图,用于存放目标数据库与备份信息,可以用 RMAN用户登录库进行查看,例:
RC_DATABASE
 
RC_DATAFILE
RC_STORED_SCRIPT RC_STORED_SCRIPT_LINE RC_TABLESPACE
4.5.2 RMAN  动态性能视图
 
下是目标数据库上与  RMAN  备份有关系的一些动态性能视图,可以用 SYS用户进行询。
V$ARCHIVED_LOG V$BACKUP_CORRUPTION V$COPY_CORRUPTION V$BACKUP_DEVICE V$CONTROLFILE_RECORD_SECTION
V$BACKUP_DATAFILE      用于通过确 定各数 据文件中 的块数来创建大小 相同的备份
。通过它也可以找出数据文件中已损坏的块数。 V$BACKUP_REDOLOG    显示在备份集中存储的归档日志。 V$BACKUP_SET    显示已经创建的备份集。 V$BACKUP_PIECE      显示为备份集创建的备份片。
里还有一个视图,可以大致的监控到  RMAN  备份进行的程度。如通过如下的  SQL
本,将获得备份的进度。
SQL> SELECT SID, SERIAL#, CONTEXT, SOFAR, TOTALWORK,
2 ROUND(SOFAR/TOTALWORK*100,2) "%_COMPLETE"
3 FROM V$SESSION_LONGOPS
4 WHERE OPNAME LIKE 'RMAN%'
5 AND OPNAME NOT LIKE '%aggregate%'
6 AND TOTALWORK != 0
7 AND SOFAR <> TOTALWORK;
要在备份过程中将某一进程与一个通道关联起来,请:
1.启动恢复管理器并连接到目标数据库和恢复目录(与后者的连接是可选的)。
rmantarget / catalog rman/rman@rcat
2.在分配通道后,设置 COMMAND ID 参数,然后复制所需的对象。
run {
allocate channel t1 type disk;
set command id to 'rman';
copydatafile 1 to '/u01/backup/df1.cpy';
release channel t1;}
3.查询 V$SESSION_LONGOPS 视图以获得复制的状态。
SELECT sid, serial#, context, sofar, totalwork
 
round(sofar/totalwork*100,2) "% Complete",
FROM v$session_longops
WHERE opname LIKE 'RMAN:%'
AND opname NOT LIKE 'RMAN: aggregate%';
4.使用 SQL*Plus 并查询 V$PROCESS 和 V$SESSION 以获得 SID 和 SPID 后,       使用操作系统实用程序来监视进程或线程。
SELECT sid, spid, client_info FROM v$process p, v$session s WHERE p.addr = s.paddr
AND client_info LIKE '%id=rman%';
 
4.5.3 List
  
List  命令是一种在数据库控制文件 或者恢复目录中查询备份的历史信息的方法。 List提供了一组信息,可以提供各种备份的信息,如对应物、备份集、归档日志备份、控文件备份等等。
出对应物
RMAN> list incarnation;
出备份概要信息
RMAN> list backup summary;
备份类型列出备份
RMAN> list backup by file;
得备份的详细信息,包括备份片的物理文件名:
RMAN> list backup; RMAN> list backupset bs#;
者按照TAG  
RMAN> list backup tag=tab_number;
出过期的备份
RMAN> list expired backup; 照表空间和数据文件来列出备份列出 USERS 表空间的备份:
RMAN> list backup of tablespace USERS;
列出文件  5  的备份:
RMAN> list backup of datafile 5;
列出文件  E:\ORACLE\USERS.DB  的备
RMAN> list backup of datafile ' E:\ORAC LE\USERS.DB ';
出控制文件的备份
RMAN> list backup of controlfile;
 
出归档日志的备份
RMAN> list archivelog all;
RMAN> list backup of archivelog all;
出副本
RMAN> list copy                                  出所有的副本。 RMAN> list copy of controlfile       列出控制文件副本 RMAN> list copy of archivelog all   出所有归档日志副本
RMAN> list copy of database           列出数据库所有数据文件的副本
 
4.5.4 Report
 
Report  命令被用于判断数据库的当前可恢复状态和提供数据库备份的特定信息,可 以检测哪些文件需要备份,哪些备份能被删除以及那些文件能不能获得的信息。可以报 告数据库的所有能备份数据文件对象,包括数据文件名、文件号、表空间、文件大小、否含有回滚段等。
RMAN> report schema
或者
RMAN> REPORT SCHEMA AT TIME 'SYSDATE-14'; RMAN> REPORT SCHEMA AT SCN 1000;
RMAN> REPORT SCHEMA AT SEQUENCE 100 THREAD 1;
 
 告需要备份的数据文件
RMAN> report need backup [ redundancy | days | incremental n];
告过期了的数据文件或者不可用的备份与拷贝
RMAN> Report obsolete [orphan]
告最近没有备份的数据文件
RMAN> report need backup days=10;        //  复需要超过 10天的归档日志
RMAN> report need backup incremental=3; //  恢复时需要超过 3  增量的文件报表
文件  增量 名称

8
15
E:\ORACLE\ORADATA\MING_RECOVER\MINGDICT.DB
9
15
E:\ORACLE\ORADATA\MING_RECOVER\MINGLOB.DB

 
个报告中,列出的数据文件,在进行恢复的时候,需要从 3  个以上的增量备份文件中
复。我们知道如果需要从很多文件中恢复,会影响恢复速度,可以根据情况来重新备份这
文件。
告备份冗余或恢复窗口
们可以执行 report need backup redundancy  来确定为满足冗余备份策略而需要备份的件。例如
RMAN> report need backup redundancy=2;    //  文件冗余备份少于 2  
们也可以按照恢复窗口来查找需要备份的文件。比如我们要求恢复窗口小于 2  天,那 么用下面的命令:
RMAN> report need backup recovery window of 2 days;    //文件报表的恢复需要超过 2天
归档日志
 
个命令等同于:report need backup days=2;

 

0
相关文章