OCP认证考试指南(1ZO-063) Oracle Database 12c高级管理
上QQ阅读APP看书,第一时间看更新

4.1.1 RMAN备份的类型

RMAN支持多种不同的备份方法,可以根据可用性需求、恢复窗口的期望大小以及数据库的全部或部分参与恢复操作时允许的停机时间,来选择合适的方法。

1.一致和不一致的备份

可将物理备份分为一致备份和不一致备份两种类型。在执行一致备份时,所有数据文件都有相同的系统更改号(System Change Number, SCN)。换句话说,重做日志中的所有更改都应用到了数据文件,使文件得到同步。由于处于打开状态的数据库在包含未提交的事务时,其缓冲区缓存中会有一些脏块,所以此类数据库的备份很少处于一致状态。结果,当数据库正常关闭或处于已安装(MOUNT)状态时,会执行一致备份。

与此相反,在数据库处于打开状态而且用户在访问数据库时,会执行不一致备份。使用不一致备份执行的恢复操作必须依赖于归档和联机重做日志文件,在打开数据库前使数据库进入一致状态。其原因在于,执行不一致备份时,数据文件的SCN通常不匹配。结果,只有数据库处于ARCHIVELOG模式时才能使用不一致备份方法。除此之外,备份模式表空间会生成大量的重做日志项,并且再循环日志项可能丢失。

2.完全和增量备份

完全备份包含表空间或数据库中每个数据文件的所有块,实际上是数据库中一个或多个数据文件的逐位备份。可使用RMAN或操作系统命令来执行完全备份,不过在执行超出RMAN范围的备份时,必须将相应信息记录到RMAN目录中,才能在RMAN恢复操作中使用它们。然而,可以在不使用RMAN的情况下以手动方式恢复数据库。在Oracle Database 12c中,Oracle建议使用RMAN执行所有备份;使用操作系统命令执行备份与使用对应的RMAN命令相比,已不再具有明显的优势。

在Oracle 12c中,增量备份可以是级别0或级别1。级别0备份是数据库中所有块的完全备份,可与数据库恢复操作中的差异、增量或累积增量级别1备份结合使用。在恢复策略中使用增量备份的一个独特优点是:不必使用归档和联机重做日志文件即可将数据库或表空间还原到一致状态:增量备份可能包含所需的一部分或所有块。只能在RMAN中执行增量备份。

3.映像副本备份

映像副本备份是由操作系统命令或RMAN BACKUP AS COPY命令创建的完全备份,发生在数据库、表空间或数据文件级别。虽然使用Linux cp命令创建的完全备份可在后来作为数据库备份注册到RMAN目录中,但在RMAN中执行同样的映像副本备份具有如下的优势:检查由RMAN读取的受损块,并将受损块的信息记录在数据字典中。映像副本是RMAN中的默认备份文件格式。

这是Oracle 12c的RMAN的一项卓越功能,原因如下:如果将另一个数据文件添加到表空间,还需要记住将新的数据文件添加到Linux脚本cp命令中。通过使用RMAN的BACKUP AS COPY DATABASE命令创建映像副本,可以自动将所有数据文件添加到备份中。而如果忘记在Linux脚本中添加新数据文件,那么,最好的结果是恢复操作异常不便,最坏的结果是发生灾难。

4.备份集和备份段

可以在大多数备份环境中创建映像副本备份,而备份集与此不同,只能在RMAN中创建和还原备份集。备份集是部分或完整数据库的RMAN备份,由一个或多个备份段组成。每个备份段仅属于一个备份集,可以包含数据库中一个或多个数据文件的备份。与其他任何由RMAN启动的备份一样,所有备份集和备份段都记录在RMAN仓库中。

5.压缩备份

对于创建备份集的任何Oracle12c RMAN备份,都可以使用压缩来减少存储备份需要的磁盘空间或磁带量。只能由RMAN使用压缩备份,在恢复操作中使用时,无须对其进行特殊处理,RMAN会自动解压缩备份。创建压缩备份是一项简单操作,只需要在RMAN BACKUP命令中指定AS COMPRESSED BACKUPSET即可。