rman基础

rman基础

rman简介

Oracle的RMAN(RecoveryManager)全称为备份与恢复管理器,它提供一个备份资料库保存备份的详细信息,可以给出针对备份的各种报表,并且整合了相关的操作系统和SQL*PIus命令为rman命令,跨平台的RMAN命令既支持交互式调用,也支持脚本式调用,其目的是保护备份并且最大限度地降低备份和恢复操作中发生人为错误的可能性,事实证明,该工具相出色地完成了任务。RMAN是备份、恢复数据库的首选工具。

rman连接数据库

未使用恢复目录

rman nocatalog
rman target /
rman target sys/123456
rman target sys/123456@网络字符串

使用catalog

rman target sys/123456 catalog rman/rman
rman target/catalog rman/rman@man
connect catalog sys/pasword@网络字符串

rman备份限制

 数据库必须处于mount或open状态
 不能备份联机日志
 数据库为归档模式

rman服务查看

一个是RMAN主会话,负责与客户端进行通信及传达指令,
另一个是RMAN监控会话,负责监控通道。
--查看RMAN的会话信息
Select sid, serial#, module, action
From v$session
Where module like'%rman%';
查询v$session,其中ACTION字段为空的行就是RMAN监控会话,另一个就是RMAN主会话:


SQL> Select sid, serial#, module, action
  2  From v$session
  3  Where module like'%rman%';

       SID    SERIAL# MODULE                                                           ACTION
---------- ---------- ---------------------------------------------------------------- ----------------------------------------------------------------
       134      54567 rman@db1 (TNS V1-V3)                                             0000076 FINISHED129
       150      39191 rman@db1 (TNS V1-V3)  
       
       
查看rman备份进度
--查看备份进度
     select sid,
       serial#,
       totalwork,
       sofar,
       case
       when opname like '%aggregate%' then
          'Total'
         else
          opname
       end opname,
       Trunc(sofar * 100 / totalwork, 2) || '%' progress
  from v$session_longops
 where opname like 'RMAN%'
   and totalwork > sofar;
 
 根据经验,如果间隔5分钟以上询vSsession-longops,若发现SOFAR没有增长,则RMAN极有可能遭遇了不健康的等待事件,此时应该咨询v$session_wait调查RMAN会话正在等待什么事件,根据事件的定义再排查出造成RMAN停摆的根木原因。



SQL>      select sid,
  2         serial#,
  3         totalwork,
  4         sofar,
  5         case
  6         when opname like '%aggregate%' then
  7            'Total'
  8           else
  9            opname
 10         end opname,
 11         Trunc(sofar * 100 / totalwork, 2) || '%' progress
 12    from v$session_longops
 13   where opname like 'RMAN%'
 14     and totalwork > sofar;

       SID    SERIAL#  TOTALWORK      SOFAR OPNAME                                                           PROGRESS
---------- ---------- ---------- ---------- ---------------------------------------------------------------- -----------------------------------------
       134      54567     412160     412159 Total                                                            99.99%

rman组件之信息库(rman资料库)

rman信息库有两个位置可以选择:

  • 目标数据库的控制文件(默认)
  • catalog数据库(恢复目录)

rman信息库中包括以下信息:

  • 数据文件备份集和副本
  • 归档重做日志副本和副本集
  • 表空间和数据文件信息
  • rman配置信息和存储脚本

默认rman的相关信息都写入控制文件中存储,如果配置了catalog就随后写入其中,rman在创建新的备份集后可以在v$backup_set视图中看到相应信息,也可以在rc_backup_set中看到相同的信息。rman信息库的恢复目录版本存储在数据库表中,信息库的控制文件版本存储在控制文件的记录内。

使用闪回区能更好利用rman特性

rman通道

一个通道是与一个设备相关联的,一个rman连接的服务器进程进行备份恢复操作实际是通过分配通道来实现的。

所谓通道,是指由服务器进程发起并控制的目标数据库的文件与物理备份设备之间的字节流。字节流的方向取决于使用通道的意图:

  • 从文件到设备的是备份操作

  • 从设备到文件的是还原操作

通道可以是手动或自动地分配通道。一个通道必须要对应一个服务器进程(会话)。通道中的设备则分为两种:DISK(磁盘)和SET(串行备份磁带或又称系统备份至磁带,代表第三存储体)。DISK是服务器挂载的磁盘,而SBT是由介质管理器控制的,一般为磁带或磁带库。

通道的工作由三个阶段组成,分别是第一阶段“读”:第二阶段“复制”:第三阶段“写”。如果是备份操作,在读阶段,通道将输入文件(被备份的文件)的数据块从磁盘读入输入缓冲;在复制阶段,通道将输入缓冲中的数据块读入到输出缓冲,并且执行必要的操作,比如校验、压缩和加密:在写阶段,通道将输出缓冲中的数据写入DISK或SBT设备。如果是还原操作,三个阶段不变,只是通道传输的方向及复制阶段的操作类型是逆向的。

手动分配通道

手动分配通道必须使用RUN命令。在rman中RUN命令会被优先执行,语法:

RUN {命令}

当命令中需要执行BACKUP、RESTORE、DELETE、等需要进行磁盘I/O操作时,可以将这些命令与ALLOCATE CHANNEL命令包含在一个RUN命令块中,利用ALLOCATE CHANNEL手动分配通道。

例如:

RMAN> run{
allocate channel ch_1 type disk;
backup database format '/tmp/whole_%d_%U';
}

RMAN中每执行一条BACKUP、COPY、RESTORE、DELETE、或RECOVER时,可以每个命令都分配一个通道,效率最大化

自动分配通道

自动就是不在RUN命令块中的,由预定义的配置来自动分配通道。

以下这些参数影响通道的自动分配

  • CONFIGURE DEVICE TYPE DISK PARALLELISM 1:定义通道数量
  • CONFIGURE DEFAULT DEVICE TYPE TO DISK/SBT:用于自动通道的默认设备

恢复默认值:

CONFIGURE DEVICE TYPE DISK CLEAR

CONFIGURE DEFAULT DEVICE TYPE CLEAR

一致与非一致备份概念

数据库备份可以分为两种备份:

一致性备份

备份所包含的各个文件中的所有修改都具备相同的系统变化编号(system change number,SCN)。也就是说,备份所包含的各个文件中的所有数据均来自同一时间点。

一致性数据库完全备份(consis-tent whole database backup)进行还原(restore)后,不需要执行恢复操作(recovery)。

非一致性备份

在数据库处于打开(open)状态时,对一个或多个数据库文件进行的备份。

非一致性备份需要在还原之后进行恢复操作。

两种备份RMAN都支持,一般都是使用RMAN 都对数据库进行非一致性备份。

RMAN备份内容包括:整个数据库,表空间,数据文件,指定的数据文件,控制文件,归档日志文件,参数文件等

configure——rman配置

RMAN> show all;

使用目标数据库控制文件替代恢复目录
db_unique_name 为 ORCL 的数据库的 RMAN 配置参数为:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
CONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/19.3/dbhome_1/dbs/snapcf_orcl.f'; # default

**CONFIGURE RETENTION POLICY TO REDUNDANCY 1 **

是用来决定那些备份不再需要了,它一共有三种可选项,分别是
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
CONFIGURE RETENTION POLICY TO REDUNDANCY 5;
CONFIGURE RETENTION POLICY TO NONE;
第一种recover window是保持所有足够的备份,可以将数据库系统恢复到最近七天内的任意时刻。任何超过最近七天的数据库备份将被标记为obsolete。
第二种redundancy 是为了保持可以恢复的最新的5份数据库备份,任何超过最新5份的备份都将被标记为obsolete。它的默认值是1份。
第三种不需要保持策略,clear将恢复回默认的保持策略。

CONFIGURE BACKUP OPTIMIZATION OFF

默认值为关闭,如果打开,rman将对备份的数据文件及归档等文件进行一种优化的算法。

CONFIGURE DEFAULT DEVICE TYPE TO DISK

是指定所有I/O操作的设备类型是硬盘或者磁带,默认值是硬盘

磁带的设置是CONFIGURE DEFAULT DEVICE TYPE TO SBT;

CONFIGURE CONTROLFILE AUTOBACKUP ON

强制数据库在备份文件或者执行改变数据库结构的命令之后将控制文件自动备份,

11g默认值为关闭,19c默认开启。避免控制文件和catalog丢失后,控制文件仍然可以恢复。

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'

是配置控制文件的备份路径和备份格式

CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET

配置数据库设备类型的并行度。并行度决定通道数。

CONFIGURE DEVICE TYPE DISK PARALLELISM 1;即可

CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1

是配置数据库的每次备份的copy数量,oracle的每一次备份都可以有多份完全相同的拷贝。

CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1

是否启动复合备份,向指定的i/o设备中指定的位置生成指定的份数。缺省为1.
这个配置仅用于数据文件和归档文件,并且,只有在自动分配通道时才会生效!

CONFIGURE MAXSETSIZE TO UNLIMITED

配置备份集的大小。一般是配置maxpiecesize,对备份片进行限制

CONFIGURE ENCRYPTION FOR DATABASE OFF

可配置加密备份集

CONFIGURE ENCRYPTION ALGORITHM 'AES128'
指定加密算法,还有一个是 ‘AES256'

CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE

COMPRESSION ALGORITHM 压缩算法* 将备份文件进行压缩

CONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS

  设置了 V$RMAN_OUTPUT保留的天数。默认为7天。

​ V$RMAN_OUTPUT 视图记录了RMAN生成的信息,这是在内存中额视图,不会记录到控制文件上。最多有37278条记录。

CONFIGURE ARCHIVELOG DELETION POLICY TO NONE;

  指定归档文件何时可以被删除的策略,此删除策略适用于所有存档目标, 包括flash recovery area。flash recovery的archive日志可以被数据库自动删除,也可以管理员手动删除(对于flash recovery area 中归档的重做日志文件,数据库尽可能长时间地保留它们,并在需要附加磁盘空间时自动删除符合条件的日志。管理员通过命令可以删除任何位置的日志)。

  默认设置:

CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; 

  默认的none就是指归档日志在以下两种情况下能够被删除:

  • archive redo logs 无论是在闪存恢复区域还是外部, 都已转移到 LOG_ARCHIVE_DEST_``n指定的所需远程目标。
  • archive redo logs 已至少备份到磁盘或 sbt 一次,或者根据备份保留策略日志已过时。

  只有当 保证的还原点不需要日志,并且 oracle 闪回数据库不需要日志时, 备份保留策略才会认为日志已过时。如果日志创建晚于SYSDATE-'DB_FLASHBACK_RETENTION_TARGET' , 则闪回数据库需要存档的重做日志。

 修改配置:

CONFIGURE ARCHIVELOG DELETION POLICY  TO BACKED UP 2 TIMES TO DISK;

 配置ARCHIVELOG的的删除策略:将磁盘中备份次数超过两次的日志不再备份(请注意,可以通过FORCEBACKUP命令上指定选项来覆盖删除策略。);

CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/19.3/dbhome_1/dbs/snapcf_orcl.f'

配置控制文件的快照文件的存放路径和文件名,这个快照文件是在备份期间产生的,用于控制文件的读一致性。防止备份期间数据库对控制文件的更改
rac在asm中

backup备份

备份路径问题

若是没有configure channel device type disk format = '/u01/bk/db_%U',
则需要format单独指定数据文件和日志文件的位置:

    backup database format '/u01/bk/bk_db_%U'

    plus archivelog format '/u01/bk/bk_lg_%U'

备份整个库

RMAN> backup database;
或者
RMAN> backup database format '/tmp/whole_%d_%U';

#查看备份信息      
RMAN> list backupset;
#删除备份
RMAN> delete backupset ;


备份并压缩

#备份整个数据库并压缩备份集
RMAN> backup as compressed backupset database format ''/opt/soft/oracle/rmanbak/whole_%d_%U';

run{
allocate channel ch1 type disk ;        
allocate channel ch2 type disk;
backup as compressed backupset  database; 
   }

镜像备份数据库

#以镜像的方式备份数据库
RMAN>backup as copy database;

备份表空间

backup tablespace

RMAN> backup tablespace users format '/opt/soft/oracle/rmanbak/tb_%d_%U';
RMAN> list backup of tablespace users;

RMAN> backup as copy tablespace users;
RMAN> list copy of tablespace users;

临时表空间不需要备份

备份数据文件

#备份类型为备份集       
RMAN> backup datafile 4 format '/opt/soft/oracle/rmanbak/df_%d_%U';    
RMAN> list backup of datafile 4;

#备份类型为镜像备份
RMAN> backup as copy datafile 4  format '/opt/soft/oracle/rmanbak/df_%d_%U';
RMAN> list copy ;
RMAN> delete copy ;

备份控制文件

RMAN> configure controlfile autobackup on;--自动备份控制文件置为on状态,11g关闭,19c默认打开

自动备份控制文件:自动备份打开时,会在把数据文件,日志文件,控制文件,SPfile等等都备份完了后,再自动备份一遍当前的控制文件。因为你在上面的备份完成后,控制文件里面记载的信息就发生了变化的,自动备份就会把它备一遍。自动备份关闭时,就不会最后再备一遍了。

关闭控制文件自动备份:

CONFIGURE CONTROLFILE AUTOBACKUP OFF;

对比 on  off 
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
show all;
backup tablespace users;       
CONFIGURE CONTROLFILE AUTOBACKUP ON;
show all;
backup tablespace users; 

#注:在备份system表空间时将会自动备份控制文件和参数文件,即使自动备份控制文件参数为off
--单独备份控制文件及参数文件
RMAN> backup current controlfile;

--备份数据文件时包含控制文件
RMAN> backup datafile 4 include current controlfile;
RMAN> sql "alter database backup controlfile to '/opt/soft/oracle/rmanbak/orclcontrol01.bak'";
RMAN> sql "alter database backup controlfile to trace as '/opt/soft/oracle/rmanbak/orclcontrol02.sql'";

备份参数文件

RMAN> backup spfile format ''/opt/soft/oracle/rmanbak/sp_%d_%U';

#查看
list backup of spfile;


备份归档

备份归档日志时仅仅备份归档过的文件(不备份联机重做日志文件)

RMAN对归档日志备份前会自动做一次日志切换

#单独备份归档
backup archivelog all

#在执行备库时一起备份归档日志:
backup database plus archivelog;

#delete input备份后删除归档
plus archivelog format '/u01/backups/arch_db2_%d_%s'  delete input;

#等
backup archivelog until time 'sysdate-7';
backup archivelog all delete input format '/rmanbak/lf_%d_%U';
backup archivelog from time "sysdate-15" until time "sysdate-7";

#查看
RMAN> list archivelog all;

使用plus archivelog时备份数据库完成的动作(backup database plus archivelog)

  1. 首先执行alter system archive log current 命令(对当前日志归档)

  2. 执行backup archivelog all 命令(对所有归档日志进行备份)

  3. 执行backup database命令中指定的数据文件、表空间等

  4. 再次执行alter system archive log current

  5. 备份在备份操作期间产生的新的归档日志

RMAN>backup database plus archivelog delete input;

RMAN> backup database plus archivelog format '/opt/soft/oracle/rmanbak/lg_%d_%U' delete input;

备份闪回区

RMAN> backup recovery area;

备份增量

Oracle 10g 增量备份只有0和1两种级别。

0级增量备:

0级增量备份与完全备份一致,以0级增量备份为基础,可执行差异增量备份、累积增量备份。

差异备份:

是RMAN生成的增量备份的默认类型。对于差异备份来说,RMAN会备份自上一次同级或低级差异增量备份以来所有发生变化的数据块。简单的讲备份上次增量备份后,所变化的数据块。

累积增量:

是备份上级备份以来所有变化的块,简单的讲备份0级增量备份后,所变化的数据块。

#0级增量备份
backup incremental level 0 database format ' /rmanbak/db_%d_%U';

#下面启用1级差异增量备份
backup incremental level 1 database format ' /rmanbak/db_%d_%U';
backup incremental level 1 database;

#下面启用1级累积增量备份
backup incremental level 1 cumulative database;

BCT(Block Change Tracking)可提高增量备份性能

并发备份

#手动
RMAN> run {
			allocate channel ch1 device type disk;
			allocate channel ch2 device type disk;
			allocate channel ch3 device type disk;
			backup database format '/opt/soft/oracle/rmanbak/df_%d_%U';
}   


#自动
使用configure配置并发度即可
RMAN> configure device type disk parallelism 3 backup type to backupset;


复用备份

即将一个备份集复制多份,同一备份集

手工指定:

RMAN> backup copies 2 datafile 4 format '/opt/soft/oracle/rmanbak/df_%U';

backup copies 2 tablespace users format '/opt/soft/oracle/rmanbak/df_%U';           

自动指定:配置下列参数

RMAN> configure datafile backup copies for device type disk to 2; 

RMAN> configure archivelog backup copies for device type disk to 2; 

备份tag

设置备份标记(每个标记必须唯一,相同的标记可以用于多个备份只还原最新的备份)

RMAN> backup database tag='full_bak';
RMAN> backup as compressed backupset datafile 4 tag='Monthly_full_bak';
RMAN> backup as compressed backupset tablespace users tag='Weekly_full_bak';
RMAN> list backupset tag=monthly_full_bak;  

format参数

%a:Oracle数据库的activation ID即RESETLOG_ID。
%c:备份片段的复制数(从1开始编号,最大不超过256)。
%d:Oracle数据库名称。
%D:当前时间中的日,格式为DD。
%e:归档序号。
%f:绝对文件编号。
%F:基于"DBID+时间"确定的唯一名称,格式的形式为c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII 为该数据库的DBID,YYYYMMDD为日期,QQ是一个1~256的序列。
%h:归档日志线程号。
%I:Oracle数据库的DBID。
%M:当前时间中的月,格式为MM。
%N:表空间名称。
%n:数据库名称,并且会在右侧用x字符进行填充,使其保持长度为8。
%p:备份集中备份片段的编号,从1开始。
%s:备份集号。
%t:备份集时间戳。
%T:当前时间的年月日格式(YYYYMMDD)。
%u:是一个由备份集编号和建立时间压缩后组成的8字符名称。利用%u可以为每个备份集生成一个唯一的名称。
%U:默认是%u_%p_%c的简写形式,利用它可以为每一个备份片段(即磁盘文件)生成一个唯一名称,这是最常用的命名方式。执行不同备份操作时,生成的规则也不同,如下所示:

生成备份片段时,%U=%u_%p_%c;
生成数据文件镜像复制时,%U=data-D-%d_id-%I_TS-%N_FNO-%f_%u;
生成归档文件镜像复制时,%U=arch-D_%d-id-%I_S-%e_T-%h_A-%a_%u;
生成控制文件镜像复制时,%U=cf-D_%d-id-%I_%u。

%Y:当前时间中的年,格式为YYYY。
如果在BACKUP命令中没有指定FORMAT选项,则RMAN默认使用%U为备份片段命名。

list——列出备份

日期显示格式可更改变量

export NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS';

列出数据库化身信息

RMAN> list incarnation;

列出详细备份信息:备份集(Backup Sets),镜像备份(image copies),proxy copies的信息。

#lists backup sets, image copies, and proxy copies
RMAN> list backup;

#列出概要信息
RMAN> list backup summary;

列出信息备份信息:备份集(Backup Sets),proxy copies信息。

#lists only backup sets and proxy copies
RMAN> list backupset;

按文件类型列出备份列表

#数据文件备份列表、已存档的日志备份列表、控制文件备份列表、SPFILE 备份的列表
RMAN> list backup by file;

列出所有数据文件的备份信息

# lists backups of all files in database
RMAN> list backup of database;

列出特定表空间的所有数据文件备份集

RMAN> list backup of tablespace users;

列出控制文件的备份信息

RMAN> list backup of controlfile;

列出备份的spfile文件信息

RMAN> list backup of spfile;

列出已备份的归档日志信息

RMAN> list backup of archivelog all;

#列出所有的归档日志
RMAN> list archivelog all;

#列出所有失效的归档日志
RMAN>list expired archivelog all;

列出指定文件的备份信息

RMAN> list backup of datafile 1;
或
RMAN> list backup of datafile '/u01/app/oracle/oradata/epps/system01.dbf';

列出备份的映像副本信息

#lists only disk copies
RMAN> list copy;

列出过期备份

#列出过期备份信息(backup sets, proxy copies, and image copies)
RMAN> list expired backup;

#列出过期备份信息(backup sets, proxy copies)
RMAN> list expired backupset;

#按备份类型列出过期备份信息
RMAN> list expired backup by file;

Report——报告分析信息

1、report schema;
报告目标数据库的物理结构。
 
2、report need backup;
报告需要备份的数据文件(根据条件不同)。
 
3、report need backup days 3;
最近三天没有备份的数据文件(如果出问题的话,这些数据文件将需要最近3天的归档日志才能恢复)。
 
4、report need backup redundancy 3;
报告出冗余次数小于3的数据文件。
 
5、report need backup recovery window of 3 days;
报告出恢复需要3天归档日志的数据文件。
 
6、report obsolete;
报告已经丢弃的备份(前提是设置了备份策略)。
 
7、report unrecoverable;
报告当前数据库中不可恢复的数据文件(即没有这个数据文件的备份、或者该数据文件的备份已经过期)。
 
8、report schema at time ‘sysdate – 7’;
 
9、report need backup days 2 tablespace system;

delete——删除

delete backupset;
delete backupset n;
delete obsolete;   -- 删除过期
delete noprompt obsolete;  -- 不提示, 删除过期
delete noprompt expired backup;  -- 不提示, 删除不在磁盘上的备份集(可以先用crosscheck同步确认一下)
delete obsolete redundancy 2;
delete noprompt copy
delete noprompt backupset tag TAG20150427T14332;
delete obsolete recovery window of 7 days;
delete expired backupset;
delete expired copy;
delete expired archivelog all;

Crosscheck

CROSSCHECK命令用户核对备份文件,以确保RMAN资料库与备份文件保持同步。当执行该命令时,如果RMAN资料库记录的状态与实际备份文件不匹配,则会更新资料库里的状态使其与实际备份文件状态一致;若备份文件处于expired状态,那么说明该备份已失效,可以删除

执行crosscheck时,RMAN检查目录中列出的每个备份集或副本并且判断他们是否存在与备份介质上。
如果备份集或副本不存在与备份介质上,它就会被标记为expired, 并且不能用于任何还原操作;
如果备份集或副本存在与备份介质上,它就会维持available状态。
如果以前被标记为expired 的备份集或副本再次存在于备份介质上,crosscheck 命令就会将它标记回available。
 
1、RMAN 备份检验的几种状态:
expired: 对象不存在于磁盘或磁带。
available: 对象处于可用状态。
unavailabe: 对象处于不可用状态。
 
2、expired 与 obsolete 的区别:
(1)对于EXPIRED状态,与crosscheck命令是密切相关的,RMAN通过crosscheck命令检查备份是否存在于备份介质上, 如果不存在,则状态由AVAILABLE改为EXPIRED。
(2)对于obsolete状态,是针对MAN备份保留策略来说的,超过了这个保留策略的备份,会被标记为obsolete,但其状态依旧为AVAILABLE,我们可以使用report obsolete来查看已废弃的备份。

RMAN>crosscheck backup; --校验备份
RMAN> crosscheck backupset; --校验备份集
RMAN> crosscheck copy; --校验镜像副本
CROSSCHECK BACKUP of database; --核对除控制文件、归档文件外的备份文件
RMAN> crosscheck backup of controlfile; --校验备份的控制文件
RMAN> crosscheck backup of archivelog all; --校验所有备份的归档日志
RMAN> crosscheck backup of datafile 1,2; --校验datafile 1,2
RMAN> crosscheck backup of tablespace sysaux,system; --校验表空间sysaux,system
RMAN> crosscheck backup completed between '13-OCT-10' and '23-OCT-10'; --校验时间段,时间段格式由NLS_DATE_FORMAT设置
RMAN> crosscheck backupset 1067,1068; --校验指定的备份集

 

删除过期备份

run{

crosscheck backup;
report obsolete;
delete noprompt obsolete;
delete noprompt expired backup;
}




备份相关的动态性能视图及监控

    v$backup_files

​    v$backup_set

​    v$backup_piece

​    v$backup_redolog

​    v$backup_spfile

​    v$backup_device

​    v$rman_configuration

​    v$archived_log

​    v$backup_corruption

​    v$copy_corruption

​    v$database_block_corruption

​    v$backup_datafile
posted @ 2022-05-10 15:25  EverEternity  阅读(262)  评论(0编辑  收藏  举报