检查数据库是否开启闪回:

SQL> select flashback_on from v$database;

FLASHBACK_ON
------------------------------------
YES

打开闪回区,必须要将数据库在mount阶段才能开启,否则会报错,如下:

SQL> alter database flashback on;
alter database flashback on
*
ERROR at line 1:
ORA-38759: Database must be mounted by only one instance and not open.

打开闪回区,数据库必须在归档模式下,否则会报错,如下:

SQL> alter database flashback on;
alter database flashback on
*
ERROR at line 1:
ORA-38706: Cannot turn on FLASHBACK DATABASE logging.
ORA-38707: Media recovery is not enabled.

将数据库修改为归档模式:

SQL> alter database archivelog;

Database altered

在mount阶段,在归档模式下,打开闪回区:

SQL> alter database open;

Database altered.

查看数据库能闪回到最早的SCN:

SQL> select oldest_flashback_scn,oldest_flashback_time from v$flashback_database_log;

OLDEST_FLASHBACK_SCN OLDEST_FLASH
-------------------- ------------
648133 13-JUL-14

查看配置的基本参数:

SQL> show parameter db_recovery_file

NAME				     TYPE     VALUE
------------------------------------ -------- ------------------------------
db_recovery_file_dest string +RECOVER
db_recovery_file_dest_size big inte 2G
ger

数据库可以恢复到多少分钟前的,默认是一天

SQL> show parameter flash

NAME				     TYPE     VALUE
------------------------------------ -------- ------------------------------
db_flashback_retention_target integer 1440

使用flash back area需要在初始化参数中定义两个参数,db_recovery_file_dest定义的是闪回区的位置,db_recovery_file_dest_size定义的是闪回区的大小,在RAC环境下配置时,需要保证每个节点的值是相同的:

修改这两个参数的时候,可以在线进行修改,如下:

SQL> alter system set db_recovery_file_dest = '+ASM' scope=both;

System altered.

SQL> alter system set db_recovery_file_dest_size='5g' scope=both sid='*';

System altered.

在使用ASM作为闪回区的位置时,只能指定到磁盘组级别,而不能是某个目录,因为ASM使用的是OMF进行管理的,会自动进行目录的创建:

SQL> alter system set db_recovery_file_dest='+recovery/test' scope=both;
alter system set db_recovery_file_dest='+recovery/test' scope=both
*
ERROR at line 1:
ORA-02097: parameter cannot be modified because specified value is invalid
ORA-01261: Parameter db_recovery_file_dest destination string cannot be
translated SQL> alter system set db_recovery_file_dest='+recovery' scope=both; System altered.

监控闪回区空间的大小使用情况:

SQL> col name format a32 heading 'file name'
SQL> col spc_lmt_mb format 9999.99 heading 'space|limit|(mb)'
SQL> col spc_usd_mb format 9999.99 heading 'space|limit|(mb)'
SQL> col spc_rcl_mb format 9999.99 heading 'reclm|space|(mb)'
SQL> col spc_usd_mb format 9999.99 heading 'space|used|(mb)'
SQL> col number_of_files format 99999 heading 'files'
SQL> select name,space_limit/(1024*1024) spc_lmt_mb,space_used/(1024*1024) spc_usd_mb,space_reclaimable/(1024*1024) spc_rcl_mb,number_of_files from v$recovery_file_dest; space space reclm
limit used space
file name (mb) (mb) (mb) files
-------------------------------- -------- -------- -------- ------
+recovery 5120.00 165.20 .00 5

如果空间使用率到达85%,在alert日志中可以看到waring的日志,如果超过了97%,会记录一条critical warning日志。告警日志查看:

SQL> select reason,object_type,suggested_action from dba_outstanding_alerts;

查看是什么文件占用了空间:

SQL> select * from v$flash_recovery_area_usage;

FILE_TYPE		 PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE  files
------------------------ ------------------ ------------------------- ------
CONTROLFILE .13 0 1
ONLINELOG 2.93 0 3
ARCHIVELOG 0 0 0
BACKUPPIECE 0 0 0
IMAGECOPY 0 0 0
FLASHBACKLOG .15 0 1 6 rows selected.

在oracle11g的默认情况下,归档日志是保存在flash back area中的,因此如果空间不够,那么将会造成归档日志无法归档,从而删除过期的归档日志即可:

使用RMAN删除过期归档日志:

[oracle@kel ~]$ rman target /

Recovery Manager: Release 10.2.0.1.0 - Production on Mon Jul 14 00:08:02 2014

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

connected to target database: OMF (DBID=680034237)

RMAN> crosscheck archivelog all;

using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=154 devtype=DISK
validation succeeded for archived log
archive log filename=+RECOVER/omf/1_1_852236226.dbf recid=1 stamp=852320500
validation succeeded for archived log
archive log filename=+RECOVER/omf/1_2_852236226.dbf recid=2 stamp=852423499
validation succeeded for archived log
archive log filename=+RECOVER/omf/1_3_852236226.dbf recid=3 stamp=852579011
validation succeeded for archived log
archive log filename=+RECOVER/omf/1_4_852236226.dbf recid=4 stamp=852840609
Crosschecked 4 objects RMAN> delete expired archivelog all; released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=154 devtype=DISK
specification does not match any archive log in the recovery catalog

flash recovery area配置的更多相关文章

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

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

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

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

  3. Flash Recovery Area 的备份

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

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

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

  5. Flash Recovery Area

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

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

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

  7. Flashback Recovery Area的设置与取消

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

  8. fast recovery area

    First of all, the version of my enviroment is Oracle 11.0.2.3. The fast recovery area used to be cal ...

  9. 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 ...

随机推荐

  1. 从一点儿不会开始——Unity3D游戏开发学习(一)

    一些废话 我是一个windows phone.windows 8的忠实粉丝,也是一个开发者,开发数个windows phone应用和两个windows 8应用.对开发游戏一直抱有强烈兴趣和愿望,但奈何 ...

  2. AndroidJNI 调用JAVA(转)

    转自:http://www.cnblogs.com/likwo/archive/2012/05/21/2512400.html   1. JNIEnv对象    对于本地函数    JNIEXPORT ...

  3. 内核MKDEV(MAJOR, MINOR)宏

    版本:linux-2.6.24.4宏:    MKDEV(MAJOR, MINOR);  说明: 获取设备在设备表中的位置.        MAJOR   主设备号        MINOR   次设 ...

  4. UINavigationController学习笔记

    http://site.douban.com/129642/widget/notes/5513129/note/187701199/ 1-view controllers的关系:Each custom ...

  5. myeclipse2014破解版本链接

    myeclipse2014破解版本下载链接 http://www.my-eclipse.cn/#download myeclipse2014破解版本汉化链接 https://blog.my-eclip ...

  6. 客户视角:Oracle ETL工具ODI

    客户视角:Oracle ETL工具ODI 数据集成已成为企业在追求市场份额中的关键技术组件,与依靠手工编码的方式不同,越来越多的企业选择完整的数据集成解决方案来支持其IT战略,从大数据分析到云平台的集 ...

  7. Android开发之Android Context,上下文(Activity Context, Application Context)

    转载:http://blog.csdn.net/lmj623565791/article/details/40481055 1.Context概念Context,相信不管是第一天开发Android,还 ...

  8. C++ 中字符串标准输入的学习及实验

    声明:下面实验中[]里面表示要输入里面的符号,[]符号本身并未输入 1.cin>> cin使用空白(空格.制表符.回车)来确定字符串的结束位置. cin会将换行符留在输入输出队列中. #i ...

  9. 数据库MySQL-Oracle-DB2-SQLServer分页查询

    1. MySQL分页查询 (1)关键字: LIMIT beginIndex, maxRow (2)示例: LIMIT子句可以用来限制由SELECT语句返回过来的数据数量,它有一个或两个参数. 如果给出 ...

  10. LinuxShell算术运算

    Bash shell 的算术运算有四种方式:1:使用 expr 外部程式 加法 r=`expr 4 + 5`echo $r注意! '4' '+' '5' 这三者之间要有空白r=`expr 4 * 5` ...