fast_recovery_area无剩余空间(ORA-19815)
一.问题现象
--执行日志切换时,夯住
SQL> alter database add logfile group 4 ('/u01/oradata/oracle/redo04.log') size 50m;
SQL> alter system switch logfile;
二.分析过程
1.怀疑磁盘空间满了(排除)
[root@oracle archivelog]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 19G 14G .5G % /
none 506M 252M 254M % /dev/shm
You have new mail in /var/spool/mail/root
[root@oracle archivelog]
2.查看alert_beijing.log日志
alter database add logfile group 4 ('/u01/oradata/oracle/redo04.log') size 50m
Completed: alter database add logfile group 4 ('/u01/oradata/oracle/redo04.log') size 50m
Sat Nov 01 03:30:49 2014
Thread 1 advanced to log sequence 163 (LGWR switch)
Current log# 4 seq# 163 mem# 0: /u01/oradata/oracle/redo04.log
Sat Nov 01 03:30:49 2014
Errors in file /u01/diag/rdbms/oracle/beijing/trace/beijing_arc0_31059.trc:
ORA-19815: WARNING: db_recovery_file_dest_size of 2147483648 bytes is 100.00% used, and has 0 remaining bytes available.
************************************************************************
You have following choices to free up space from 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.
************************************************************************
Errors in file /u01/diag/rdbms/oracle/beijing/trace/beijing_arc0_31059.trc:
ORA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 24801792 bytes disk space from 2147483648 limit
三.问题定位
数据库归档日志放置在fast_recovery_area中,而空间已满
四.解决过程
1.如果数据库无法打开,则修改db_recovery_file_dest_size
SQL> startup nomount;
SQL> show parameter db_recovery_file_dest_size
SQL> Alter system set db_recovery_file_dest_size=2G scope=both;
SQL> alter database mount;
SQL> alter database open;
2.删除历史归档日志
2.1 手动删除归档日志
[root@oracle archivelog]# pwd
/u01/flash_recovery_area/ORACLE/archivelog
[root@oracle archivelog]# ls -l
drwxr-x--- oracle oinstall Nov : 2014_10_29
drwxr-x--- oracle oinstall Nov : 2014_10_30
drwxr-x--- oracle oinstall Nov : 2014_10_31
drwxr-x--- oracle oinstall Nov : 2014_11_01
[root@oracle archivelog]# rm -rf 2014_10_29
[root@oracle archivelog]# rm -rf 2014_10_30
[root@oracle archivelog]# rm -rf 2014_10_31
2.2 更新归档日志在存储仓库中的状态
RMAN> crosscheck archivelog all; released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=42 device type=DISK
validation failed for archived log
archived log file name=/u01/flash_recovery_area/ORACLE/archivelog/2014_10_31/o1_mf_1_159_b58hpwom_.arc RECID=155 STAMP=862437663
validation succeeded for archived log
archived log file name=/u01/flash_recovery_area/ORACLE/archivelog/2014_11_01/o1_mf_1_160_b593tqck_.arc RECID=158 STAMP=862458264
validation succeeded for archived log
archived log file name=/u01/flash_recovery_area/ORACLE/archivelog/2014_11_01/o1_mf_1_161_b593cqd6_.arc RECID=156 STAMP=862457783
validation succeeded for archived log
archived log file name=/u01/flash_recovery_area/ORACLE/archivelog/2014_11_01/o1_mf_1_162_b593crx1_.arc RECID=157 STAMP=862457784
Crosschecked 4 objects RMAN>
crosscheck作用:更新存储仓库中的刚刚校验的对象的状态,便于后续操作处理 校验对象:核对数据库、表空间、数据文件、控制文件、归档日志、SPFILE的备份集 对象状态
1.expired: 对象不存在于磁盘或磁带。当一个备份集处于expired状态,则该备份集中所有的备份片同样处于expired状态
2.available: 对象处于可用状态。当一个备份集可用,则该备份集内的所有备份片同样可用
3.unavailabe: 对象处于不可用状态。当一个备份集不可用,则该备份集内的所有备份片同样不可用
2.3删除所有expired状态归档日志记录(实际文件前面已经被删除)
RMAN> DELETE EXPIRED archivelog all; released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID= device type=DISK
List of Archived Log Copies for database with db_unique_name ORACLE
===================================================================== Key Thrd Seq S Low Time
------- ---- ------- - ---------
X -OCT-
Name: /u01/flash_recovery_area/ORACLE/archivelog/2014_10_31/o1_mf_1_159_b58hpwom_.arc Do you really want to delete the above objects (enter YES or NO)? yes
deleted archived log
archived log file name=/u01/flash_recovery_area/ORACLE/archivelog/2014_10_31/o1_mf_1_159_b58hpwom_.arc RECID= STAMP=
Deleted EXPIRED objects RMAN>
fast_recovery_area无剩余空间(ORA-19815)的更多相关文章
- SQL Server自动化运维系列——监控磁盘剩余空间及SQL Server错误日志(Power Shell)
需求描述 在我们的生产环境中,大部分情况下需要有自己的运维体制,包括自己健康状态的检测等.如果发生异常,需要提前预警的,通知形式一般为发邮件告知. 在所有的自检流程中最基础的一个就是磁盘剩余空间检测. ...
- SQL Server自动化运维系列 - 监控磁盘剩余空间及SQL Server错误日志(Power Shell)
需求描述 在我们的生产环境中,大部分情况下需要有自己的运维体制,包括自己健康状态的检测等.如果发生异常,需要提前预警的,通知形式一般为发邮件告知. 在所有的自检流程中最基础的一个就是磁盘剩余空间检测. ...
- SQL Server 自动化运维系列 - 监控磁盘剩余空间及SQL Server错误日志(Power Shell)
需求描述 在我们的生产环境中,大部分情况下需要有自己的运维体制,包括自己健康状态的检测等.如果发生异常,需要提前预警的,通知形式一般为发邮件告知. 在所有的自检流程中最基础的一个就是磁盘剩余空间检测. ...
- android计算每个目录剩余空间丶总空间以及SD卡剩余空间
ublic class MemorySpaceCheck { /** * 计算剩余空间 * @param path * @return */ public static String getAvail ...
- 用花生壳实现内网映射,决解无域名、无公网IP、无服务器空间问题
无域名.无公网IP.无服务器空间用花生壳提供的免费内网映射吧.你的PC就是服务器,花生壳提供的自定义二级域名轻松访问你的个人网站. 1.首先你得注册哦,然后申请免费的域名(2个) 2.设置路由器,下面 ...
- css实现div的高度填满剩余空间
css实现div的高度填满剩余空间 .top{ width: 100%; height: 70px;} .bottom{background-color: #cc85d9;width: 100%;po ...
- sql 查询服务器硬盘剩余空间
DECLARE @tb1 Table( drive varchar(20), [MB 可用空间] varchar(20)) INSERT INTO @tb1 Exec master.dbo.xp_fi ...
- android 判断sd的状态,所有文件,剩余空间的大小
public class MainActivity extends AppCompatActivity { String TAG = MainActivity.class.getCanonicalNa ...
- 查看tablespace实际使用量和剩余空间
到某表空间所有段的加和值,即按表空间分组统计dba_data_files.bytes-dba_free_space.bytes=dba_segments.bytesdba_segments中可查询已分 ...
随机推荐
- Oracle基础—表分区
一:表分区的应用场景 用于管理包含大量数据的表. 二:表分区的优点 1.提高数据的可以性 2.减少管理负担 3.改善语句的性能 三:分区的方式:(区间分区.散列分区.列表分区.组合分区) 1.区间分区 ...
- Oracle基础<4>--程序包
一:程序包定义(包括1.程序包规范 2.程序包主体) 程序包是一种数据库对象,它是对相关pl/sql 类型.子程序.游标.异常.变量和常量的封装. 1.程序包规范:可以声明类型.变量.常量.异常.游标 ...
- Chrome隐身模式有什么用
最近发布的Chrome浏览器,小编发现有一个个“隐身窗口”功能,那么这是什么功能呢?原来这是Chrome隐身模式!那么这个隐身模式有什么功能呢? Chrome隐身模式有什么用? 从官方的介绍来看,“隐 ...
- dfa最小化,修正了上个版本的一些错误。
上个版本测试的时候,只用了两个非常简单的测试用例,所以好多情况有问题却没有测试出来 bug1:在生成diff_matrix的时候,循环变量少循环了一次,导致最后一个节点在如果无法与其他点合并的情况下, ...
- hdu 1243 反恐训练营 最长公共字序列
此题的题意很明确,就是求最长公共子序列: #include<iostream> #include<algorithm> #include<cstdio> #incl ...
- 转:微信Android客户端架构演进之路
转自: http://www.infoq.com/cn/articles/wechat-android-app-architecture 微信Android客户端架构演进之路 作者 赵原 发布于 20 ...
- java 集合(list、set、map)的特点
集合相关的类有一大堆,一般也只用到常用的方法增删改查,而且它它们的方法名也基本一样,所以一直都不知道什么时候用什么集合, 今天趁有空特意从网上整理资料方便日后回忆. 一.List:.有顺序以线性方式存 ...
- shell中使用echo命令改变输出显示样式
文本终端的颜色可以使用“ANSI非常规字符序列”来生成.举例:echo -e "\033[44;37;5m ME \033[0m COOL" 以上命令设置背景成为蓝色,前景白色,闪 ...
- windows Api AlphaBlend的使用方法
很早的时候公司里开发了个c++客户端软件,需要支持windows2000,要求简单小巧,并且不希望引入其他界面库,图形引擎之类的东西,像gdi+之类的,于是对于美工做出来的一些界面,需要有alpha通 ...
- Liskov替换原则(LSP)
OCP中,继承支持了抽象和多态特性. LSP:子类必须能够替换掉其基类. 反例:使用if/else判断类型,以便选择针对特定类型的正确行为. 有效性并非本质属性 模型的有效性,只能通过它的客户程序来表 ...