ORACLE_OCP之对备份进行优化
- 压缩备份
- 使用介质管理器
- 创建超大文件的多部分备份
- 创建代理副本(代理镜像)
- 创建双工备份集
- 创建备份的归档
- 备份其他文件:
- 备份控制文件以进行跟踪
- 备份归档的重做日志文件
- CATALOG中添加其他备份文件
- 备份ASM元数据
一、通过未使用的块压缩节省备份空间
- 在某些类型的备份操作期间,可能会跳过以下块:
- 未分配的块:这些块位于数据文件的高水位线(HWM)上方。
- 未使用的块:这些是已分配但不再属于段的块.
二、压缩备份
- RMAN可以对生成的任何备份集执行二进制压缩.
- 除了未使用的块压缩外,还可以执行此操作。
- 可用的压缩算法为HIGH,MEDIUM,LOW和BASIC。
- DBA不需要额外的步骤来还原压缩备份。
CONFIGURE COMPRESSION ALGORITHM ‘HIGH/MEDIUM/LOW/BASIC’
run {
SET COMPRESSION ALGORITHM ‘HIGH/MEDIUM/LOW/BASIC’;
… }
BACKUP AS COMPRESSED BACKUPSET DATABASE PLUS ARCHIVELOG;
三、使用RMAN备份压缩
四、使用介质管理器
-
根据要安装的产品,执行以下基本步骤:
- 1.在目标主机或生产网络上安装和配置媒体管理软件。在此阶段不需要RMAN集成。
- 2.确保可以对目标数据库主机上的操作系统文件进行非RMAN备份。此步骤使以后解决问题变得更加容易。请参阅您的媒体管理文档以了解如何将文件备份到媒体管理器。
- 3.获取并安装用于与Oracle数据库集成的第三方媒体管理模块。访问媒体管理器时,此模块必须包含Oracle数据库服务器加载的库。
-
使用媒体管理器备份和还原操作
-
以下恢复管理器脚本将数据文件备份到由介质管理器控制的磁带驱动器上:
run {
#Allocating a channel of type ‘sbt’ for serial device
ALLOCATE CHANNEL ch1 DEVICE TYPE sbt;
BACKUP DATAFILE 3;
} -
Recovery Manager执行此命令时,会将备份请求发送到执行备份的Oracle数据库会话。 Oracle数据库会话将输出通道标识为介质管理设备,并请求介质管理器加载磁带并写入输出。
-
介质管理器标记并跟踪磁带以及每个磁带上的文件名。媒体管理器还处理还原操作。还原文件时,将发生以下步骤:
- 1.Oracle数据库服务器请求还原特定文件。
- 2.介质管理器识别包含文件的磁带并读取该磁带。
- 3.介质管理器将信息传递回Oracle数据库会话。
-
Oracle数据库服务器将文件写入磁盘。
-
RMAN还支持代理复制,该功能使介质管理器可以完全管理磁盘和备份介质之间的数据传输。 RMAN提供了需要备份或还原的文件列表。然后,媒体管理器确定如何以及何时移动数据。
五、为大文件配置备份和还原
- 单个文件的多部分备份:
- 由RMAN创建,大小值由您指定
- 独立处理(串行或并行处理)
- 生成多件套备份集和映像副本
- 提高备份性能
六、备份和还原非常大的文件
- 单个数据文件的多部分备份:
- 由RMAN创建,具有您指定的大小值
- 用于备份集和镜像副本
- 可以用于完整和增量备份
- 优点:
- 减少镜像副本的创建时间
- 独立处理(串行或并行处理)
- 等适用于EXADATA
- 要求和限制:
- COMPATIBLE=12.0 <版本兼容度>
- 不适用于控制或密码文件
- 不适用于大型并发应用的数据库系统
七、创建RMAN多部分备份
-
RMAN命令语法:
BACKUP <options> SECTION SIZE <integer> [K | M | G]
VALIDATE DATAFILE <options> SECTION SIZE <integer> [K | M | G]
-
Example:
RMAN> BACKUP DATAFILE 5 SECTION SIZE = 25M TAG ‘section25mb’;
backing up blocks 1 through 3200
piece handle=/u01/…/o1_mf_nnndf_SECTION25MB_382dryt4_.bkp tag=SECTION25MB comment=NONE
…
backing up blocks 9601 through 12800
piece handle=/u01/…/o1_mf_nnndf_SECTION25MB_382dsto8_.bkp tag=SECTION25MB comment=NONE
八、创建代理副本
九、使用备份副本创建双工备份集
- 在磁带上创建备份集的两个副本的示例:
RMAN> BACKUP AS BACKUPSET DEVICE TYPE sbt
2> COPIES 2
3> INCREMENTAL LEVEL 0
4> DATABASE;
十、创建备份集的备份
RMAN> BACKUP DEVICE TYPE DISK AS BACKUPSET
2> DATABASE PLUS ARCHIVELOG;
RMAN> BACKUP DEVICE TYPE sbt BACKUPSET ALL;
十一、备份的归档:概念
- 如果您需要在指定的时间内保留在线备份,RMAN通常会假定您可能要执行从该备份到现在的任何时间的时间点恢复。为了满足这种情况,RMAN在该时间段内保留存档的日志。但是,您可能需要简单地将特定备份(以及保持其一致性和可恢复性)保持指定的时间(例如两年)。您无意恢复到自该备份以来的某个时间点,而只是希望能够恢复到备份的确切时间,并且以后再也不用。您还希望维护一个保留策略,以使您的备份区域整洁,因此不能将备份区域推迟两年。当满足数据保留的业务或法律要求时,这是常见的需求。
- 备份的归档解决了这个问题。如果将备份标记为备份的归档,则此属性将覆盖任何配置的保留策略。您可以保留备份的归档,以使它们仅在指定的时间后才被视为已废弃,或者永不被视为已废弃。如果要指定后者,则需要使用恢复目录(CATALOG)。
- KEEP子句创建一个备份的归档,该备份是某个时间点数据库的快照。唯一保留的重做日志是将备份恢复到一致状态所需的重做日志。备份完成后发出的RESTORE POINT子句确定了保留的重做日志的数量(足以将备份还原到RESTORE POINT时间)。
- 备份的归档还可以确保还原备份所需的所有文件都包括在内。 RMAN包括数据文件,SPFILE,归档的日志文件(仅恢复在线备份所需的日志文件)以及相关的自动备份文件。 所有这些文件都必须属于相同的介质系列(或磁带组)。
- 您还可以指定要创建的还原点,该还原点具有与备份的归档相同的SCN。 从本质上讲,这在备份时间点上具有有意义的名称
- 创建备份的归档后,它将保留指定的时间。 即使保留窗口小得多,并运行DELETE OBSOLETE命令,备份的归档仍然保留。
- 该备份是某个时间点数据库的快照,例如,可用于将数据库还原到另一台主机以进行测试。
注意:备份的归档无法写入快速恢复区。 因此,如果有一个,则必须提供FORMAT子句以指定其他位置。
十二、使用RMAN创建备份的归档
-
数据库联机时指定KEEP子句,包括数据文件和归档日志备份集:
KEEP {FOREVER | UNTIL TIME [=] ’ date_string '}
NOKEEP
[RESTORE POINT rsname] -
列出RMAN存储库已知的所有还原点:
LIST RESTORE POINT ALL;
-
显示特定的还原点:
LIST RESTORE POINT ‘rsname’;
十三、管理CATALOG数据库上的备份的归档
-
CATALOG数据库中备份的归档的永久保留操作:
RMAN> CONNECT TARGET /
RMAN> CONNECT CATALOG rman/rman@catdb
RMAN> CHANGE BACKUP TAG ‘consistent_db_bkup’
2> KEEP FOREVER; -
更改数据库副本的状态:
RMAN> CHANGE COPY OF DATABASE CONTROLFILE NOKEEP;
十四、备份相关的恢复文件
-
仅备份快速恢复区中的文件:
RMAN> BACKUP RECOVERY AREA
-
备份所有恢复文件:
RMAN> BACKUP RECOVERY FILES
十五、将控制文件备份到跟踪文件
- 控制文件跟踪备份包含在丢失所有控制文件的情况下重新创建控制文件所需的SQL语句。
- 建议每次更改数据库的物理结构后再做。
- 控制文件跟踪备份可用于从所有控制文件丢失中恢复。
- 选择您的DBA工具:EM Express,Cloud Control或命令行。
十六、CATALOG中添加其他备份文件
- 在CATALOG库中使用命令:
- 相关记录不再存在于控制文件中,他是以RMAN CATALOG的操作备份现有文件
- 要将以下文件类型添加到CATALOG中:
- CONTROLFILECOPY:控制文件副本
- DATAFILECOPY: 数据文件副本
- BACKUPPIECE: 备份副本
- ARCHIVELOG: 归档的REDO
- 使用START WITH选项:
RMAN> CATALOG ARCHIVELOG ‘/disk1/arch_logs/archive1_731.log’, ‘/disk1/arch_logs/archive1_732.log’;
RMAN> CATALOG START WITH '/tmp/arch_logs/‘;
十七、备份ASM磁盘组元数据
-
使用ASMCMD md_backup命令创建一个备份文件,该文件包含一个或多个磁盘组的元数据
-
如果ASM磁盘组丢失,则使用备份文件来重建磁盘组及其元数据。
-
如果没有元数据备份文件,则在丢失时必须手动重新创建磁盘组。
-
备份所有已安装的磁盘组:
ASMCMD> md_backup /backup/asm_metadata
-
备份DATA磁盘组:
ASMCMD> md_backup /backup/asm_metadata –G data