Oracle 释放flash recovery area的四种方法
早上收到一台Linux服务器磁盘告警邮件以及监控告警日志程序发来的邮件。检查过后,发现Linux服务器中一个分区没有空间了。主要原因是由于昨晚程序员做升级时,产生了大量的归档日志,导致联机重做日志无法归档,出现下面错误:
363 | Wed Mar 19 02:33:16 2014 | ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/mes/redo02.log'
369 | Wed Mar 19 02:34:16 2014 | ORA-16014: log 2 sequence# 75999 not archived, no available destinations
370 | Wed Mar 19 02:34:16 2014 | ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/mes/redo02.log'
373 | Wed Mar 19 02:34:16 2014 | ORA-16014: log 2 sequence# 75999 not archived, no available destinations
374 | Wed Mar 19 02:34:16 2014 | ORA-00312: online log 2 thread 1: '/u01/app/oracle/oradata/mes/redo02.log'
383 | Wed Mar 19 02:39:16 2014 | ORA-19502: write error on file "/u03/flash_recovery_area/mes/archivelog/2014_03_19/o1_mf_1_75999_9lk4pngn_.arc", blockno 108545 (blocksize=512)
384 | Wed Mar 19 02:39:16 2014 | ORA-27072: File I/O error
由于当时比较急,于是手工删除了昨天的归档日志,释放了大量空间,结果发现告警日志出现了如下错误:
ORA-19815: WARNING: db_recovery_file_dest_size of 42949672960 bytes is 100.00% used, and has 7684830208 remaining bytes available.
Wed Mar 19 08:48:48 2014
************************************************************************
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.
************************************************************************
Wed Mar 19 08:48:54 2014
Thread 1 advanced to log sequence 76076 (LGWR switch)
出现这个错误时因为:当手工删除了归档日志以后,Rman备份会检测到日志缺失,从而无法进一步继续执行。所以此时需要手工执行crosscheck过程,之后Rman备份可以恢复正常。
如上所示,Oracle 提供了4中方法解决这个问题:
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.
翻译如下:
你可以采用下面选项释放闪回恢复区的空间:
1:考虑修改RMAN备份保留策略,如果你使用的Data Guard,应该考虑修改RMAN归档日志删除策略。
2:使用RMAN BACKUP RECOVERY AREA命令将备份至于第三方设备(例如磁带)
3:增加磁盘空间并增加db_recovery_file_dest_size大小。
1: SQL> show parameter db_recovery_file_dest
2:
3: NAME TYPE VALUE
4:
5: ------------------------------------ ----------- ------------------------------
6:
7: db_recovery_file_dest string /u03/flash_recovery_area
8:
9: db_recovery_file_dest_size big integer 40G
10:
11: SQL>alter system set db_recovery_file_dest_size=48G scope=both;
12:
4: 使用RMAN DELETE命令删除不需要的文件,如果使用如果操作系统命令来删除文件,则必须使用RMAN CROSSCHECK和
DELETE EXPIRED 的命令
$ rman target /
Recovery Manager: Release 10.2.0.4.0 - Production on Wed Mar 19 14:51:09 2014
Copyright (c) 1982, 2007, Oracle. All rights reserved.
connected to target database: EPPS (DBID=2179379665)
RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;
RMAN> delete obsolete;
参考资料:http://www.eygle.com/archives/2004/12/rman_crosscheck.html
Oracle 释放flash recovery area的四种方法的更多相关文章
- oracle之Flash Recovery Area全面介绍 (转载)
1. 设置闪回恢复区闪回恢复区主要通过3个初始化参数来设置和管理 db_recovery_file_dest:指定闪回恢复区的位置db_recovery_file_dest_size:指定闪回恢复区的 ...
- Flash Recovery Area空间不足导致DB不能打开或hang住处理方法
当归档目录设置在闪回恢复区,并且闪回恢复区又满了的情况下, DB 就会无法归档而hang住或者无法打开. 这种情况下打开数据库会遇到如下错误信息: SQL> select status from ...
- Flash Recovery Area 的备份
Flash Recovery Area 的备份 备份命令是Flash recovery Area,该命令是Oracle 10g以后才有的.10g引进了flash recovery area,同时在rm ...
- Flash Recovery Area
1. 设置闪回恢复区 闪回恢复区主要通过3个初始化参数来设置和管理 db_recovery_file_dest:指定闪回恢复区的位置db_recovery_file_dest_size:指定闪回恢复区 ...
- 【AS3】Flash与后台数据交换四种方法整理
随着Flash Player 9的普及,AS3编程也越来越多了,所以这次重新整理AS3下几种与后台数据交换方法.1.URLLoader(URLStream)2.FlashRemoting3.XMLSo ...
- oracle增加表空间的四种方法,查询表空间使用情况
增加表空间大小的四种方法Meathod1:给表空间增加数据文件ALTER TABLESPACE app_data ADD DATAFILE'D:\ORACLE\PRODUCT\10.2.0\ORADA ...
- oracle增加表空间的四种方法
1. 查看所有表空间大小 select tablespace_name,sum(bytes)/1024/1024 from dba_data_files group by tablespace_nam ...
- C#连接Oracle数据库的四种方法
C#连接数据库的四种方法 在进行以下连接数据库之前,请先在本地安装好Oracle Client,同时本次测试System.Data的版本为:2.0.0.0. 在安装Oracle Client上请注意, ...
- C#连接数据库的四种方法(转)
C#连接数据库的四种方法 在进行以下连接数据库之前,请先在本地安装好Oracle Client,同时本次测试System.Data的版本为:2.0.0.0. 在安装Oracle Client上请注意, ...
随机推荐
- PHPStorm如何配置,phpstorm的mac配置文件目录
PHPStorm的配置分为2大类:项目配置和IDE配置. 项目配置(设置),主要是配置具体项目.IDE 配置(设置),通用的设置会应用到所有的项目上. 项目配置每个项目的配置存储在项目所在目录的 .i ...
- objective-c 语法快速过(4)
oc 里的字符串 字符串的快速创建(最简单的方法) NSStirng *str = @“Hello”;//oc的字符串都是@“”形式的 oc的字符串也是类的对象,是NSString类的对象,创建没有那 ...
- mysql创建定时执行存储过程任务
sql语法很多,是一门完整语言.这里仅仅实现一个功能,不做深入研究. 目标:定时更新表或者清空表. 案例:曾经做过定时清空位置信息表的任务.(然而,当时并未考虑服务器挂掉后的情况) 本次测试:每5s更 ...
- react入门(4)
首先还是来回顾一下前三篇讲的内容 react入门(1): jsx,组件,css写法 react入门(2):事件,this.props.children,props,...other react入门(3 ...
- iOS滤镜实现之LOMO(美图秀秀经典LOMO)
LOMO追求鲜艳色彩,随意.自由的态度,是一种经常使用的滤镜,今天介绍一下iOS 中LOMO滤镜的实现 首先它有3张输入图像 1.我们要处理的图像.即我们要应用LOMO滤镜的图像 2 3 在gpuim ...
- Final Cut Pro X效果插件开发总结
一.介绍 最近公司需要针对Final Cut Pro(FCP)开发一款效果插件,用于对公司自己开发的视频格式进行后期处理.Final Cut Pro是苹果公司推出的一款视频剪辑软件,因此需要在OSX平 ...
- JS围棋半成品
// = 0 && cheseArray[x][y-1] == chessState.None){ return true; } if(y + 1 = 0 &&ches ...
- 写个C#命令行参数解析的小工具
最近测试工作做的比较多因此时常要创建一些控制台类型的应用程序.因为程序有不同的参数开关,需要在程序启动的时候通过命令行来给程序传递各种开关和参数.直接操作args有些不方便,所以就写了个解析参数的小工 ...
- Win10 UWP 开发系列:使用多语言工具包让应用支持多语言
之前我在一篇blog中写过如何使用多语言工具包,见http://www.cnblogs.com/yanxiaodi/p/3800767.html 在WinEcos社区也发布过一篇详细的文章介绍多语言工 ...
- 基于DevExpress的Winform程序安装包的制作
在我们做系统开发的时候,都会面临一个安装包制作的问题,如何把我们做好的系统,通过安装包工具整合成一个安装包给客户进行安装.安装包的优势就是一步步安装就可以了,不用复制一大堆文件给客户,还怕缺少那个文件 ...
