oracle闪回区管理

Errors in file /home/oracle/diag/rdbms/orarpt/orarpt/trace/orarpt_mmon_22508.trc:
ORA-19815: WARNING: db_recovery_file_dest_size of 2147483648 bytes is 98.55% used, and has 31102976 remaining bytes available.
************************************************************************
You have following choices to free up space from flash recovery area:
1. Consider changing RMAN RETENTION POLICY. If you are using Data Guard,
   then consider changing RMAN ARCHIVELOG DELETION POLICY.
2. Back up files to tertiary device such as tape using RMAN
   BACKUP RECOVERY AREA command.
3. Add disk space and increase db_recovery_file_dest_size parameter to
   reflect the new space.
4. Delete unnecessary files using RMAN DELETE command. If an operating
   system command was used to delete files, then use RMAN CROSSCHECK and
   DELETE EXPIRED commands.
************************************************************************

今天数据库重启时,查看alert日志发现上面的错误,虽然现在数据库可以正常启动运行,但当这个db_recovery_file_dest_size使用100%的时候,
将会报错ORA-19809: limit exceeded for recovery files,数据库将会因无法归档而挂起。

查看闪回区的信息

select * from v$recovery_file_dest;  

NAME              /home/oracle/flash_recovery_area
SPACE_LIMIT       2147483648
SPACE_USED        2116380672
SPACE_RECLAIMABLE 0
NUMBER_OF_FILES   1

查看alert告警,以及oracle给出的处理建议。

select reason,object_type,suggested_action  from dba_outstanding_alerts;  

REASON            db_recovery_file_dest_size 字节 (共 2147483648 字节) 已使用 98.55%, 尚有 31102976 字节可用。
OBJECT_TYPE        RECOVERY AREA
SUGGESTED_ACTION "可以选择以下操作之一从快速恢复区释放空间:
                  1. 考虑更改 RMAN RETENTION POLICY。如果使用的是 Data Guard,
                   则考虑更改 RMAN ARCHIVELOG DELETION POLICY。
                  2. 使用 RMAN
                   BACKUP RECOVERY AREA 命令将文件备份到磁带之类的三级存储。
                  3. 添加磁盘空间并增大 db_recovery_file_dest_size 参数以反映
                     这个新空间。
                  4. 使用 RMAN DELETE 命令删除不需要的文件。如果使用了操作系统
                     命令来删除文件, 则使用 RMAN CROSSCHECK 和
                     DELETE EXPIRED 命令。"

这里我只试了第3、4种方法

第3种修改方法,扩展闪回区

SQL> show parameter db_recovery_file_dest_size;  

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest_size           big integer 2G  

SQL> alter system set db_recovery_file_dest_size=4G scope=both;  

系统已更改。  

SQL> show parameter db_recovery_file_dest_size;  

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest_size           big integer 4G

现在已经将闪回区空间扩充到了4G,也就是新增了2G。

第4种修改方法,清空闪回区
注意,刚才直接将db_recovery_file_dest目录下的文件删除,SPACE_USED也不会释放。

oracle@linux-35:~> rman target /  

Recovery Manager: Release 11.1.0.6.0 - Production on Wed Oct 12 12:35:09 2011  

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

connected to target database: ORARPT (DBID=2356255833)  

RMAN> crosscheck archivelog all;  

using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1138 device type=DISK
validation failed for archived log
archived log file name=/home/oracle/flash_recovery_area/ORARPT/archivelog/2011_06_08/o1_mf_1_11_6yz1mw4l_.arc RECID=2 STAMP=753316072
validation failed for archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_12_750871897.dbf RECID=3 STAMP=753397594
validation failed for archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_13_750871897.dbf RECID=4 STAMP=753404604
validation failed for archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_14_750871897.dbf RECID=5 STAMP=753490060
validation failed for archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_15_750871897.dbf RECID=6 STAMP=753530695
validation failed for archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_16_750871897.dbf RECID=7 STAMP=753599698
validation failed for archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_17_750871897.dbf RECID=8 STAMP=753646377
validation failed for archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_18_750871897.dbf RECID=9 STAMP=753747854
validation failed for archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_19_750871897.dbf RECID=10 STAMP=753809369
validation failed for archived log
……

更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/Oracle/

RMAN> delete expired archivelog all;  

released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=1138 device type=DISK
List of Archived Log Copies for database with db_unique_name ORARPT
=====================================================================  

Key     Thrd Seq     S Low Time
------- ---- ------- - ---------
2       1    11      X 07-JUN-11
        Name: /home/oracle/flash_recovery_area/ORARPT/archivelog/2011_06_08/o1_mf_1_11_6yz1mw4l_.arc  

3       1    12      X 08-JUN-11
        Name: /home/oracle/product/11.1.0/db_1/dbs/arch1_12_750871897.dbf  

4       1    13      X 09-JUN-11
        Name: /home/oracle/product/11.1.0/db_1/dbs/arch1_13_750871897.dbf  

5       1    14      X 09-JUN-11
        Name: /home/oracle/product/11.1.0/db_1/dbs/arch1_14_750871897.dbf  

6       1    15      X 10-JUN-11
        Name: /home/oracle/product/11.1.0/db_1/dbs/arch1_15_750871897.dbf  

7       1    16      X 11-JUN-11
        Name: /home/oracle/product/11.1.0/db_1/dbs/arch1_16_750871897.dbf  

8       1    17      X 12-JUN-11
        Name: /home/oracle/product/11.1.0/db_1/dbs/arch1_17_750871897.dbf
        ……
Do you really want to delete the above objects (enter YES or NO)? yes
deleted archived log
archived log file name=/home/oracle/flash_recovery_area/ORARPT/archivelog/2011_06_08/o1_mf_1_11_6yz1mw4l_.arc RECID=2 STAMP=753316072
deleted archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_12_750871897.dbf RECID=3 STAMP=753397594
deleted archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_13_750871897.dbf RECID=4 STAMP=753404604
deleted archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_14_750871897.dbf RECID=5 STAMP=753490060
deleted archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_15_750871897.dbf RECID=6 STAMP=753530695
deleted archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_16_750871897.dbf RECID=7 STAMP=753599698
deleted archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_17_750871897.dbf RECID=8 STAMP=753646377
deleted archived log
archived log file name=/home/oracle/product/11.1.0/db_1/dbs/arch1_18_750871897.dbf RECID=9 STAMP=753747854  

RMAN> exit  

Recovery Manager complete.

再查看闪回区的信息,SPACE_USED已经释放。

select * from v$recovery_file_dest;  

NAME                /home/oracle/flash_recovery_area
SPACE_LIMIT    2147483648
SPACE_USED     0
SPACE_RECLAIMABLE      0
NUMBER_OF_FILES    0

本文出自 “richard的笔记-积微成著” 博客,请务必保留此出处http://zxf261.blog.51cto.com/701797/722307

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索oracle
, log
, home
, arch
, valid file
, oracle_11g_ora_12505
__FILE__
oracle 闪回区、oracle查看闪回区大小、oracle 闪回区大小、oracle 闪回恢复区、oracle 闪回区满,以便于您获取更多的相关知识。

时间: 2024-10-30 21:06:01

oracle闪回区管理的相关文章

Oracle闪回区满

  一台老的测试AIX服务器,没人理过,最近一看Oracle闪回满了.清理了下. Version: Oracle 10gR2 for AIX 现象: ? 1 2 3 4 5 6 7 SQL> alter database open; alter database open * ERROR at line 1: ORA-16014: log 3 sequence# 157 not archived, no available destinations ORA-00312: online log 3

oracle闪回表详解

  --- 说明闪回数据库 --- 使用闪回表将表内容还原到过去的特定时间点 --- 从删除表中进行恢复 --- 使用闪回查询查看截止到任一时间点的数据库内容 --- 使用闪回版本查询查看某一行在一段时间内的各个版本 --- 使用闪回事务查询查看事务处理历史记录或行 优点: 闪回技术由于只能处理更改数据,所以从根本上改变了恢复技术.使用这个技术时,从错误中恢复花费的时间等于制造错误所花费的时间.当闪回技术使用时,它与介质恢复相比,在易用性.可用性和还原时间方面有明显的优势. 闪回数据库使用闪回日

性能-关于Oracle闪回的问题

问题描述 关于Oracle闪回的问题 请问Oracle闪回的数据是否可以按照时间设置多少小时内可闪回? 还是Oracle闪回的数据只能设置数据量的大小? 另:Oracle闪回空间的设置对数据库性能有哪些方面的影响? 解决方案 Oracle的闪回技术提供了一组功能,可以访问过去某一时间的数据并从人为错误中恢复.闪回技术是Oracle 数据库独有的,支持任何级别的恢复,包括行.事务.表和数据库范围.使用闪回特性,您可以查询以前的数据版本,还可以执行更改分析和自助式修复,以便在保持数据库联机的同时从逻

Oracle 闪回特性(FLASHBACK DATABASE)

--===================================== -- Oracle 闪回特性(FLASHBACK DATABASE) --=====================================       闪回技术通常用于快速简单恢复数据库中出现的认为误操作等逻辑错误,从闪回的方式可以分为基于数据库级别闪回.表级别闪回.事务 级别闪回,根据闪回对数据的影响程度又可以分为闪回恢复,闪回查询.闪回恢复将修改数据,闪回点之后的数据将全部丢失.而闪回查询则可 以查询数

关于闪回区溢出导致的数据hang(r11笔记第12天)

对于Oracle数据库的闪回区的设置,之前和一个同事和讨论过,总体来说有一些不同的意见. 首先这个闪回区是一个逻辑的概念,闪回区的大小不会严格依赖于磁盘空间的情况,比如磁盘空间目前剩余100G,但是你设置闪回区为200G是没有问题的. 如此一来,和只使用归档参数想比,这个闪回区似乎有一点问题,总体来说闪回区的管理还是比较方便的,可以监控管理闪回区中的归档,闪回日志,备份等的大小. 使用的视图为v$flash_recovery_area_usage,在11g做了简化,为v$recovery_are

Oracle 闪回特性(Flashback Query、Flashback Table)

--================================================== -- Oracle 闪回特性(Flashback Query.Flashback Table) --==================================================       Oracle 闪回查询是指针对特定的表来查询特定的时间段内的数据变化情况来确定是否将表闪回到某一个特定的时刻以保证数据无讹误存在. 这个特性大大的减少了采用时点恢复所需的工作量以及

Oracle 闪回特性(FLASHBACK DROP & RECYCLEBIN)

--============================================== -- Oracle 闪回特性(FLASHBACK DROP & RECYCLEBIN) --==============================================       FLASHBACK DROP 特性允许在不丢失任何数据库的情况下将指定的表恢复至其被删除的时间点,并保持数据库为当前状态.闪回删除并不是 真正的删除表,而是把该表重命名并放入回收站,类似于Windows的

Oracle 闪回技术详细介绍及总结_oracle

Oracle闪回技术详解,这里整理了4种闪回技术,对Oracle 闪回技术做一个整理总结.  概述: 闪回技术是Oracle强大数据库备份恢复机制的一部分,在数据库发生逻辑错误的时候,闪回技术能提供快速且最小损失的恢复(多数闪回功能都能在数据库联机状态下完成).需要注意的是,闪回技术旨在快速恢复逻辑错误,对于物理损坏或是介质丢失的错误,闪回技术就回天乏术了,还是得借助于Oracle一些高级的备份恢复工具如RAMN去完成(这才是Oracle强大备份恢复机制的精髓所在啊)  撤销段(UNDO SEG

Oracle 闪回特性(Flashback Version、Flashback Transaction)

--========================================================== -- Oracle 闪回特性(Flashback Version.Flashback Transaction) --==========================================================         Oracle闪回特性为数据的快速回复某一对象的特定数据提供了更多的便利.前面介绍了闪回的几种特性,包括flashback dat