First of all, the version of my enviroment is Oracle 11.0.2.3.

The fast recovery area used to be called flashback recovery area. When you want to enable flashback database feature, your database must have this area. So I always confused about these two concept.

Let`s review how to enable flashback recovery area quickly.

1. Make sure the log mode is archive

select log_mode from v$database;

2. Set the fast recovery area / flashback recovery area

SQL> alter system set db_recovery_file_dest='/flash_recovery_area';
SQL> alter system set db_recovery_file_dest_size=8G;

3. set the flashback retention target

This is controlled by the DB_FLASHBACK_RETENTION_TARGET instance parameter, which is in minutes, and the default is one day. The flashback log space is reused in a circular fashion, older data being overwritten by newer data. This parameter instructs Oracle to keep flashback data for a certain number of minutes before overwriting it:
SQL> alter system set db_flashback_retention_target=240;
It is only a target (four hours in the preceding example) and if the flash recovery area is undersized, Oracle may not be able to keep to it. But in principle, you should be able to flash back to any time within this target.

4. Enable flashback on

SQL> shutdown immediate;
SQL> startup mount;
SQL> alter database flashback on;
SQL> alter database open;

The purpose of this review is to tell you one of funcitons of the fast/flashback recovery area. Then why oracle changed the name of this area from flashback area to fast recovery area? It is because this area have more functions than flashback. Called flashback recovery area may mislead people that this area is used for flashback database only. Actually there are more files can be and should be placed in this area.

From now on we will call it Fast recovery area. The fast recovery area is a default location for all recovery-related files. The fast recovery area can be located in either a file system directory (Oracle will create its own subdirectories within this) or an ASM disk group. The flash recovery area can only be a disk destination. The flash recovery area is not enabled by default, unless the database is created with the Database Configuration Assistant (DBCA).

Files can be stored in the fast recovery area are either permanent or transient. Permanent files are :

  • control file mulitplexed copies
  • online redo log file mulitplexed copies

If the fast recovery area is defiened during the db creation time. And the control_files parameter , db_create_file_dest parameter not set, then control file copy will be created automatically in the flashback recovery area.  Simailarly, if the db_create_online_log_dest_n are not set and you didnt specify where to create the online redo log. The online redo will be created here.

The transient occupants of the flash recovery area are:

  • archived redo log files
  • rman backups
  • rman copies
  • control file auto-backups
  • flashback log files( in 10g this area is mainly for flashback log files. So we call this area flashback recovery area)

The transient occupants can be deleted automatically by the RMAN Recovery Manager if the flash recovery area is full, if space is needed for more recent transient files, and if the policies in effect permit this.

In previeous 11g release.  If none of the LOG_ARCHIVE_DEST_n parameters have been set, then transitioning the database to archivelog mode will internally set LOG_ARCHIVE_DEST_10 to the flash recovery area, if it has been configured.  But we know that log_archive_dest and log_archive_dest_n is incompatible. So if you configured the fast recovery area you can not set the log_archive_dest. Or you will hit the error below.

SQL> alter system set log_archive_dest='/oracle_asm/OrclArchiveLog' scope=both;
alter system set log_archive_dest='/oracle_asm/OrclArchiveLog' scope=both
*
ERROR at line 1:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-16018: cannot use LOG_ARCHIVE_DEST with LOG_ARCHIVE_DEST_n or
DB_RECOVERY_FILE_DEST

In 11.0.2.3 the log_arechive_dest_10 will not be set as the db_recovery_file_dest. But you still can not set the log_arch_dest and db_recovery_file_dest at the same time.

If you want to know what kind of files are stored in the fast recovery area you can check the view v$flash_recovery_area_usage.

SQL> select * from v$flash_recovery_area_usage;

FILE_TYPE            PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
-------------------- ------------------ ------------------------- ---------------
CONTROL FILE 0 0 0
REDO LOG 0 0 0
ARCHIVED LOG 2.78 0 8
BACKUP PIECE 0 0 0
IMAGE COPY 0 0 0
FLASHBACK LOG 0 0 0
FOREIGN ARCHIVED LOG 0 0 0

2.78 here means 2.78%.

fast recovery area的更多相关文章

  1. Flash Recovery Area 的备份

    Flash Recovery Area 的备份 备份命令是Flash recovery Area,该命令是Oracle 10g以后才有的.10g引进了flash recovery area,同时在rm ...

  2. Oracle 释放flash recovery area的四种方法

    早上收到一台Linux服务器磁盘告警邮件以及监控告警日志程序发来的邮件.检查过后,发现Linux服务器中一个分区没有空间了.主要原因是由于昨晚程序员做升级时,产生了大量的归档日志,导致联机重做日志无法 ...

  3. Refresh recovery area usage data after manually deleting files under recovery area

    Original source: http://www.dba-oracle.com/t_v$_flash_recovery_area.htm If you manually delete files ...

  4. Flashback Recovery Area的设置与取消

    在Oracle 10g中, Flash back家族分为以下成员: Flashback Database, Flashback Drop,Flashback Query(分Flashback Quer ...

  5. oracle之Flash Recovery Area全面介绍 (转载)

    1. 设置闪回恢复区闪回恢复区主要通过3个初始化参数来设置和管理 db_recovery_file_dest:指定闪回恢复区的位置db_recovery_file_dest_size:指定闪回恢复区的 ...

  6. Flash Recovery Area空间不足导致DB不能打开或hang住处理方法

    当归档目录设置在闪回恢复区,并且闪回恢复区又满了的情况下, DB 就会无法归档而hang住或者无法打开. 这种情况下打开数据库会遇到如下错误信息: SQL> select status from ...

  7. Flash Recovery Area

    1. 设置闪回恢复区 闪回恢复区主要通过3个初始化参数来设置和管理 db_recovery_file_dest:指定闪回恢复区的位置db_recovery_file_dest_size:指定闪回恢复区 ...

  8. flash recovery area配置

    检查数据库是否开启闪回: SQL> select flashback_on from v$database; FLASHBACK_ON ----------------------------- ...

  9. Oracle的FRA(Flash Recovery Area)的好处

    如果FRA的空间耗尽,只会影响到这个Oracle实例自身.所以不会耗尽所有磁盘空间从而影响到其它的数据库实例或其它应用.

随机推荐

  1. EditText(8)EditText中drawableRight图片的点击事件

    参考: http://stackoverflow.com/questions/3554377/handling-click-events-on-a-drawable-within-an-edittex ...

  2. 394 Decode String 字符串解码

    给定一个经过编码的字符串,返回它解码后的字符串.编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次.注意 k 保证为正整数.你可以认 ...

  3. Chromium浏览器编译成功庆祝

     1.什么是Chromium     Chromium 是Google公司的开源项目     Google浏览器  最新版360浏览器 都是在Chromium的基础上重新编译的. 2.什么是双核浏览器 ...

  4. mac下iterm2 设置笔记

    1.利用brew install zsh 来安装oh my zsh 2.chsh -s /bin/zsh,修改~/.zshrc文件 alias cls='clear' alias ll='ls -l' ...

  5. Redis系列(八)--缓存穿透、雪崩、更新策略

    1.缓存更新策略 1.LRU/LFU/FIFO算法剔除:例如maxmemory-policy 2.超时剔除,过期时间expire,对于一些用户可以容忍延时更新的数据,例如文章简介内容改了几个字 3.主 ...

  6. 【原】SMTP发送邮件

    1.下载class.phpmailer.php和class.smtp.php至公共库 2.编写发邮件的公共函数 function sendMail($param) { $config = C('THI ...

  7. 数组array的常用方法简介

    数组方法简介 数组总共有22种方法,本文将其分为以下几类来进行详细介绍. 原数组变化:push() pop() shift() unshift() reverse() sort() splice() ...

  8. libevent reference Mannual III--working with events

    FYI: http://www.wangafu.net/~nickm/libevent-book/TOC.html Working with events Libevent’s basic unit ...

  9. idea+maven配置log4j详解

    经过上一篇的讲解,知道了实现log4j打印日志依赖的jar包共3个,在pom.xml中加入相关依赖: <!-- 添加log4j日志相关jar包:共3个jar--> <!-- http ...

  10. 集合:Iterator

    why ? when ? how ? what ? 为什么需要集合呢? 在数据结构中链表.树.堆等一些操作都是由我们自己写的,这些操作是不是可以提取出来,以后要用就直接拿来用就好,这样非常方便. Ja ...