天天看点

牛刀小试Oracle之FRA学习

1、闪回恢复区简介            FRA允许存储所有与恢复相关的所有文件。 FRA可以使用本地附加的存储、Oracle的群集文件系统(Cluster File System,简写为OCFS)或Oracle 10g中新的自动存储管理(ASM)特性。

表1-1  FRA中的文件类型

文件类型 说明
归档的重做日志 归档的重做日志文件在FRA中
控制文件 当创建数据库时,FRA中创建控制文件的一个副本
控制文件自动备份 RMAN对控制文件的自动备份放在FRA中(如果定义FRA)
闪回日志 闪回日志将存储在FRA中(如果定义FRA)
重做日志 每个重做日志组成员的一个副本放在FRA中
RMAN数据文件副本 RMAN数据文件副本放在FRA中(如果定义FRA)
RMAN备份和其他相关文件 RMAN常规备份集的默认位置是FRA(如果定义FRA)

        FRA的分配空间的尺寸和位置,有两个参数决定。在Oracle 11g中,如果可回收空间低于DB_RECOVERY_FILE_DEST_SIZE参数值15%时,将会出现警告,可以通过DBA_OUTSTANDING_ALERTS表查看。

注意:        如果闪回恢复区是唯一的归档日志目标,那么FRA中的空间被用完时。数据库会被挂起。所以如果FRA是唯一 的,就必须仔细观察期空间可用性。

        FRA两个关键参数设置         DB_RECOVERY_FILE_DEST和 DB_RECOVERY_FILE_DEST_SIZE,分别定义存储位置和存储大小。         为了能让数据库拥有多个归档重做日志的位置,可以通过设定LOG_ARCHIVE_DEST_n参数来定义。一般设置LOG_ARCHIVE_DEST_1为常用归档日志目录,设置 LOG_ARCHIVE_DEST_10为FRA位置。

       ####log_archive_min_succeed_dest=2        ####log_archive_format="prod_%t_%s_%r.arc"

        FRA视图          DBA_OUTSTANDING_ALERT:从FRA中添加或删除文件时事件将会记录在警告日志中。          V$RECOVERY_FILE_DEST:提供在数据库中定义的FRA的概述。提供配置的FRA的大小、所使用的空间数量、可以回收多少空间,以及FRA中的文件数量。          V$FLASH_RECOVERY_AREA_USAGE:FRA空间各个文件类型的详细信息。

是否应该使用FRA?        书中表明,他们倾向于使用FRA和至少一个位于不同磁盘位置上的其他的归档日志目标来配置数据库。(通过 LOG_ARCHIVE_DEST_n来配置,后面讲到实际操作 )        而我接触地很多数据库,其实都是至通过设置 LOG_ARCHIVE_DEST_1来决定归档位置,当然数据库也跑得非常地稳定,所以如何设置数据库的归档位置,其实都是因人而异。

操作演习:最后我通过手头上的一个实验环境,来表述一下FRA和常用归档两个归档位置的实际操作演习。

步骤1:为归档的重做日志设置FRA和目录

SQL> alter system set db_recovery_file_dest_size=2G;

SQL> alter system set db_recovery_file_dest='/arp/oraarp/oradata/arpdb/flash_recovery_area';

步骤2:定义两个归档日志目录

SQL> alter system set log_archive_dest_1='location=/arp/oraarp/oradata/arpdb/archivelog';

SQL> alter system set log_archive_dest_10='location=USE_DB_RECOVERY_FILE_DEST';

SQL> alter system set log_archive_min_succeed_dest=2;

SQL> show parameter archive;

步骤3.数据库开启归档模式

SQL> shutdown immediate; SQL> startup mount; SQL> alter database archivelog; SQL> alter database open; SQL> archive log list;

测试环境归档  SQL> alter system switch logfile;

查看之前定义的归档位置:

[ [email protected] archivelog]$ ls -l /arp/oraarp/oradata/arpdb/archivelog/1_8_882464926.dbf 

-rw-r-----. 1 oraarp oinstall 30962176 Jun 17 15:26 /arp/oraarp/oradata/arpdb/archivelog/1_8_882464926.dbf 

[ [email protected] archivelog]$ ls -l /arp/oraarp/oradata/arpdb/flash_recovery_area/ARPDB/archivelog/2015_06_17/o1_mf_1_8_br2892bn_.arc 

-rw-r-----. 1 oraarp oinstall 30962176 Jun 17 15:26 /arp/oraarp/oradata/arpdb/flash_recovery_area/ARPDB/archivelog/2015_06_17/o1_mf_1_8_br2892bn_.arc