RMAN备份概念_关于备份集(Backup Set)

当在RMAN中执行BACKUP命令时,可以创建一个或多个备份集或映像拷贝。缺省情况下,RMAN创建备份集,不管目的地是磁盘还是介质管理器。


1.关于备份集和备份片

RMAN可以存储备份数据在称为备份集的逻辑结构中,它是RMAN备份的最小单元。

备份集包含来自一个或多个数据文件,归档redo日志,控制文件或服务器参数文件的数据。备份集只能通过RMAN来创建和访问,是RMAN可以写备份到介质管理器比如磁带驱动器和磁带库的唯一形式。

备份集包含一个或多个RMAN专用格式的二进制文件,这些文件称为备份片(Backup Piece)。备份集可以包含多个数据文件。例如,可以备份10个数据文件到一个包含一个备份片的备份集。在这种情况中,RMAN作为输出创建一个备份片。备份集只包含这个备份片。

如果在BACKUP命令中指定SECTION SIZE参数,那么RMAN产生一个多段(multisection)备份。这是一个大文件的备份,由多个通道并行产生,每个产生一个备份片。每个备份片包含备份的文件的一部分。

对于非多段备份,RMAN只记录成功完成的备份集到恢复目录,不存在部分的备份集这种情况。这与不成功的多段备份不同,多段备份的RMAN元数据可能包含部分备份集的记录。在后面这种情况中,必须使用DELETE命令来删除部分的备份集。

注:RMAN从不将部分备份视为还原和恢复的候选者。


2.备份集的RMAN块压缩

当创建备份集时,RMAN可以使用块压缩。

存在以下块压缩类型:
1) 未使用的块压缩(支持磁盘备份和Oracle Secure Backup磁带备份)
2) 空块压缩(支持所有备份)

RMAN块压缩不是传统的二进制压缩,而是总共使用一系列技术来避免备份某些不需要的块到备份中。


未使用的块压缩(Unused Block Compresision)

<think>我们正在配置Oracle19c数据库,使用RMAN备份到指定的恢复文件目录(即`DB_RECOVERY_FILE_DEST`)。以下是步骤和配置说明:###1.确认恢复目录设置首先,确保数据库的`DB_RECOVERY_FILE_DEST`参数已设置为你想要备份到的目录。可以通过以下SQL查询当前设置:```sqlSHOW PARAMETERDB_RECOVERY_FILE_DEST; ```如果未设置,可以使用以下命令设置(例如设置为`/u01/app/oracle/fast_recovery_area`): ```sqlALTER SYSTEMSET DB_RECOVERY_FILE_DEST ='/u01/app/oracle/fast_recovery_area'SCOPE=BOTH; ```同时,可以设置`DB_RECOVERY_FILE_DEST_SIZE`来限制该目录的最大使用空间(例如100GB): ```sqlALTER SYSTEMSET DB_RECOVERY_FILE_DEST_SIZE=100GSCOPE=BOTH; ```###2.配置RMAN备份策略使用RMAN进行备份时,默认会使用`DB_RECOVERY_FILE_DEST`作为备份目标。我们可以通过RMAN配置一些参数来优化备份。 ####示例:配置备份集并行度(可选)为了提高备份速度,可以设置并行度(例如8)[^2]: ```rmanRMAN>CONFIGUREDEVICETYPE DISK PARALLELISM8BACKUPTYPE TOBACKUPSET;``` ####示例:配置备份优化(可选) 启用备份优化可以避免重复备份相同的数据: ```rmanRMAN>CONFIGUREBACKUPOPTIMIZATION ON; ```###3.执行备份现在,我们可以执行全库备份(包括归档日志): ```rmanRMAN>BACKUPDATABASEPLUS ARCHIVELOG;```此命令将备份整个数据库以及所有归档日志,并存储到`DB_RECOVERY_FILE_DEST`指定的目录中。 ###4.验证备份备份完成后,可以列出备份信息: ```rmanRMAN>LIST BACKUP;``` 或者检查备份的详细内容: ```rmanRMAN>LIST BACKUP SUMMARY; ```###5.备份控制文件和SPFILE(推荐) 为了确保备份的完整性,建议单独备份控制文件和SPFILE:```rmanRMAN> BACKUP CURRENTCONTROLFILE; RMAN>BACKUPSPFILE; ```###6.配置自动备份控制文件(可选,但强烈推荐) 为了在每次备份时自动备份控制文件,可以配置: ```rmanRMAN>CONFIGURECONTROLFILEAUTOBACKUPON;``` ###注意事项-确保`DB_RECOVERY_FILE_DEST`指向的目录有足够的空间。-定期清理过期的备份(使用`DELETEOBSOLETE`命令)或配置保留策略(`CONFIGURERETENTION POLICY`)[^3]。-监控恢复目录的空间使用情况,避免空间不足导致备份失败[^1]。 ###示例:清理过期的备份配置保留策略(例如保留7天): ```rmanRMAN>CONFIGURERETENTION POLICYTO RECOVERYWINDOW OF7DAYS; ```然后删除过期的备份:```rmanRMAN> DELETEOBSOLETE; ```###引用说明在配置过程中,如果遇到恢复相关的错误(如ORA-00283、ORA-01124等),可能是因为文件正在使用或恢复过程中出现问题[^1]。确保在备份数据库处于可用状态,并检查相关文件的状态。此外,并行度设置可以提高备份效率[^2],而正确的恢复管理(包括解决归档日志GAP)对于备份的可用性至关重要[^3]。§§相关问题§§1.如何监控RMAN备份的进度和状态?2.RMAN备份到`DB_RECOVERY_FILE_DEST`与备份到其他目录有何区别?3.如何从`DB_RECOVERY_FILE_DEST`的备份中恢复数据库? 4.如何配置RMAN的加密备份以提高安全性?</think>### Oracle 19c RMAN 备份到 DB_RECOVERY_FILE_DEST 配置指南 #### **1. 配置恢复文件目录** ```sql -- 检查当前设置 SELECT name, value FROM v$parameter WHERE name = 'db_recovery_file_dest'; -- 设置恢复目录(示例路径) ALTER SYSTEM SET db_recovery_file_dest = '/u01/oracle/recovery_area' SCOPE=BOTH; -- 设置目录大小限制(示例100GB) ALTER SYSTEM SET db_recovery_file_dest_size = 100G SCOPE=BOTH; ``` **说明**: - `db_recovery_file_dest` 是备份的默认存储位置 - 大小限制防止磁盘写满(需定期清理旧备份)[^3] #### **2. 关键RMAN配置** ```rman -- 启用控制文件自动备份 CONFIGURE CONTROLFILE AUTOBACKUP ON; -- 设置备份保留策略(示例保留7天) CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS; -- 配置并行备份(可选优化) CONFIGURE DEVICE TYPE DISK PARALLELISM 4; -- 根据CPU核心调整[^2] ``` #### **3. 执行备份操作** ```rman -- 全库备份(含归档日志) BACKUP DATABASE PLUS ARCHIVELOG; -- 备份后验证 VALIDATE BACKUPSET LATEST; ``` #### **4. 维护命令** ```rman -- 查看备份 LIST BACKUP SUMMARY; -- 删除过期备份 DELETE OBSOLETE; -- 交叉校验备份 CROSSCHECK BACKUP; ``` #### **5. 故障处理要点** - **空间不足错误**: ```sql ALTER SYSTEM SET db_recovery_file_dest_size = 150G; -- 扩大限额 ``` - **文件占用错误(ORA-01124)**: 确保无其他进程访问文件[^1] - **监控空间使用**: ```sql SELECT * FROM v$recovery_file_dest; ``` #### **最佳实践** 1. **定期清理**: ```rman DELETE NOPROMPT ARCHIVELOG ALL BACKED UP 2 TIMES TO DISK; ``` 2. **备份策略**: - 全备:每周1次 - 增量备:每日1次 - 归档日志:每小时备份 3. **验证恢复**: ```rman RESTORE DATABASE VALIDATE; ``` > **注意**:备份前确保数据库处于`ARCHIVELOG`模式: > ```sql > SELECT log_mode FROM v$database; > -- 若非归档模式: > SHUTDOWN IMMEDIATE; > STARTUP MOUNT; > ALTER DATABASE ARCHIVELOG; > ALTER DATABASE OPEN; > ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值