本文档假设您进行的是基本备份与恢复-运行在Archivelog模式-多路镜像控制文件-定期进行备份-定期进行全库恢复测试1.开启目标块检查就是尽早发现数据库中的坏块。这需要很少的性能开销,但允许Oracle尽早检测到由底层磁盘、存储系统或I/O系统问题引起的坏块。SQL>altersystemsetdb_block_checking=truescope=两者;2、使用RMAN增量备份时,开启块变化跟踪(BlockChangeTracking)功能。更改跟踪文件包含的数据可以防止RMAN增量备份进程读取自上次备份以来未修改的数据。所需资料。如果没有块更改跟踪,则必须读取所有块以确定自上次备份以来它们是否已被修改。SQL>alterdatabaseenableblockchangetrackingusingfile'/u01/oradata/ora1/change_tracking.f';3.镜像重做日志组和成员,将归档日志存储在多个目标位置通过在多个位置存储多份副本,当一个归档日志损坏或丢失时,其他日志仍然存在并可以使用。如果联机日志被删除或损坏,则可以根据需要使用其他成员进行恢复。SQL>altersystemsetlog_archive_dest_2='location=/new/location/archive2'scope=both;SQL>alterdatabaseaddlogfilemember'/new/location/redo21.log'togroup1;4、使用RMAN备份数据库时使用CHECKLOGICAL选项,这使得RMAN除了定期校验和验证外,还检查数据块是否在块内逻辑损坏。这是确保您拥有良好备份的最佳方式。RMAN>backupchecklogicaldatabaseplusarchivelogdeleteinput;5.测试备份这将执行除实际还原(restore)数据库之外的所有操作。这是在出现问题之前(当备份非常重要时)确定备份是否良好和可用的最佳方法。如果使用RMAN,则可以使用以下命令执行此操作:RMAN>restorevalidatedatabase;6、使用RMAN时,将每个数据文件存储在一个单独的备份片(backuppiece)中当执行部分恢复时,RMAN必须读取完整的备份片以获取所需的数据文件/归档日志。因此,备份片越小,恢复完成的速度就越快。这对于大型数据库的磁带备份或仅单个/少数文件的恢复特别有用。但是,filesperset的值较小也会导致创建更多的备份片,从而降低备份性能并增加维护操作时间。因此,必须根据所需的恢复时间要求来权衡这些因素。RMAN>backupdatabasefilesperset1plusarchivelogdeleteinput;7、维护RMAN目录(catalog)/控制文件,谨慎选择保留策略(retentionpolicy)。确保它满足磁带保留策略和备份恢复策略的要求。如果不使用目录,请确保CONTROL_FILE_RECORD_KEEP_TIME参数与保留策略匹配。SQL>altersystemsetcontrol_file_record_keep_time=21scope=两者;这会将备份记录保存在控制文件中21天。定期运行以下目录维护命令。原因:删除过时的将删除保留策略之外的备份。如果不删除过期的备份,该目录将继续增长,直到出现性能问题。RMAN>删除过时的;原因:交叉检查将检查目录/控制文件是否与物理备份匹配。如果备份丢失,此命令会将备份片设置为“EXPIRED”,并且在开始恢复时,不会使用此备份,而是使用较早的备份。要删除目录/控制文件中的过期备份,请使用deleteexpired命令。RMAN>交叉检查备份;RMAN>删除过期备份;8.为控制文件的丢失做好准备这将确保您始终拥有最新的控制文件,控制文件备份是在当前备份结束时进行的,而不是在备份过程中。RMAN>配置控制文件自动备份;保留备份日志原因:备份日志包含磁带访问的参数和控制文件备份的位置。如果所有文件都丢失了,可以使用日志。9、测试恢复原因:当需要进行恢复时,无需实际进行恢复就可以知道恢复过程是怎样的,可以避免再次恢复数据文件。SQL>恢复数据库测试;10、使用RMAN备份时,备份归档日志时不要指定“deleteallinput”原因:“deleteallinput”会在备份一个归档目录的归档日志后,删除不同归档目录的归档日志,而“deleteallinput”input”备份一个归档目录下的归档日志后只删除该目录下的归档日志,下次备份时会备份归档目录2下的日志和归档目录1下的新日志,然后删除所有备份上日志。这意味着您将保留自上次备份以来存档目录2下可用的存档日志(包括已备份的日志)和上次备份之前备份的两个副本。
