热门标签 | HotTags
当前位置:  开发笔记 > Android > 正文

ORA-19804:cannotreclaim48156160bytesdiskspacefrom403

ORA-19804:cannotreclaim48156160bytesdiskspacefrom4039114752limit

ORA-19804: cannot reclaim 48156160 bytes disk space from 4039114752 limit

1. 今天启动计算机时,发现如下错误:

SYS@orcl>select status from v$database;
select status from v$database
*
ERROR at line 1:
ORA-01034: Oracle not available
Process ID: 0
Session ID: 0 Serial number: 0

2. 查看log.xml,发现如下错误:

client_id='' type='UNKNOWN' level='16'
host_id='WO' host_addr='fe80::780d:d5a2:b794:f5cf%18' module='oradim.exe'
pid='3628'>
Errors in file d:\study\oracle11g\oralce_basic_directory\diag\rdbms\orcl\orcl\trace\orcl_ora_3628.trc:
ORA-16038: log 1 sequence# 106 cannot be archived
ORA-19809: limit exceeded for recovery files

ORA-00312: online log 1 thread 1: 'D:\STUDY\ORACLE11G\ORACLE_DATABASE\ORCL\REDO01.LOG'

3. 找到trace文件,进一步确定问题根源:

ORA-19815: WARNING: db_recovery_file_dest_size of 4039114752 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.
************************************************************************
ORA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 48156160 bytes disk space from 4039114752 limit
*** 2014-03-15 09:07:55.780 4132 krsh.c
ARCH: Error 19809 Creating archive log file to 'D:\STUDY\ORACLE11G\ORALCE_BASIC_DIRECTORY\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_03_15\O1_MF_1_106_%U_.ARC'
*** 2014-03-15 09:07:55.780 2747 krsi.c

在trace 文件中可以看到问题的根源,闪回恢复已经满,oracle无法归档,而后oracle又给出解决方案。

5. 在闪回恢复区中的空间使用超过 85% 的时候,数据库将会向 alert 文件中写入告警信息。而当超过 97% 的时候将会写入严重告警信息。当闪回恢复区空间不够的时候,Oracle将报告如下类似的错误:
ORA-19809:limit exceeded for recovery files
ORA-19804:cannot reclaim 52428800 bytes disk space from 1258291200 limit

6. 解决方案,应该先把闪回恢复区扩大,打开数据库,而后用rman删除过期的备份文件和归档文件,注意在数据库未打开时,,rman不能进行删除备份 文件和归档文件

6.1 启动数据库到nomount;

SYS@orcl>startup nomount
ORACLE instance started.

Total System Global Area 1071333376 bytes
Fixed Size 1375792 bytes
Variable Size 662700496 bytes
Database Buffers 402653184 bytes
Redo Buffers 4603904 bytes

6.2 扩大闪回恢复区的大小

SYS@orcl>show parameter db_recovery

NAME TYPE
------------------------------------ ---------------------------------
VALUE
------------------------------
db_recovery_file_dest string
D:\study\oracle11g\oralce_basi
c_directory\flash_recovery_are
a
db_recovery_file_dest_size big integer
3852M
SYS@orcl>alter system set db_recovery_file_dest_size=5g scope=both;

System altered.

6.3 此时可以打开数据库了

SYS@orcl>alter database mount;

Database altered.

SYS@orcl>alter database open;

Database altered.

7. 此时可以用rman 删除过期的备份文件与归档文件(本人的是测试机可以删除所有备份文件与归档文件,在生产库则要权衡要删除的文件)

RMAN> delete backupset;

RMAN> delete archivelog all;

8. 检查一下flashrecovery area的使用情况:

SYS@orcl>select * from v$flash_recovery_area_usage;

FILE_TYPE PERCENT_SPACE_USED
------------------------------------------------------------ ------------------
PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
------------------------- ---------------
CONTROL FILE 0
0 0

推荐阅读
  • 基于KVM的SRIOV直通配置及性能测试
    SRIOV介绍、VF直通配置,以及包转发率性能测试小慢哥的原创文章,欢迎转载目录?1.SRIOV介绍?2.环境说明?3.开启SRIOV?4.生成VF?5.VF ... [详细]
  • XNA 3.0 游戏编程:从 XML 文件加载数据
    本文介绍如何在 XNA 3.0 游戏项目中从 XML 文件加载数据。我们将探讨如何将 XML 数据序列化为二进制文件,并通过内容管道加载到游戏中。此外,还会涉及自定义类型读取器和写入器的实现。 ... [详细]
  • 解决JAX-WS动态客户端工厂弃用问题并迁移到XFire
    在处理Java项目中的JAR包冲突时,我们遇到了JaxWsDynamicClientFactory被弃用的问题,并成功将其迁移到org.codehaus.xfire.client。本文详细介绍了这一过程及解决方案。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 本文详细介绍了如何使用ActionScript 3.0 (AS3) 连接并操作MySQL数据库。通过具体的代码示例和步骤说明,帮助开发者理解并实现这一过程。 ... [详细]
  • 在即将迎来26岁生日之际,作者的人生陷入了低谷。经过近三年的硕士学习后,最终决定退学,并且面临没有工作经验的困境。尽管如此,作者依然坚定地选择为自己的人生负责。 ... [详细]
  • 使用Python在SAE上开发新浪微博应用的初步探索
    最近重新审视了新浪云平台(SAE)提供的服务,发现其已支持Python开发。本文将详细介绍如何利用Django框架构建一个简单的新浪微博应用,并分享开发过程中的关键步骤。 ... [详细]
  • 本文详细介绍了美国最具影响力的十大财团,包括洛克菲勒、摩根、花旗银行等。这些财团在历史发展过程中逐渐形成,并对美国的经济、政治和社会产生深远影响。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • 深入探讨CPU虚拟化与KVM内存管理
    本文详细介绍了现代服务器架构中的CPU虚拟化技术,包括SMP、NUMA和MPP三种多处理器结构,并深入探讨了KVM的内存虚拟化机制。通过对比不同架构的特点和应用场景,帮助读者理解如何选择最适合的架构以优化性能。 ... [详细]
  • 本题通过将每个矩形视为一个节点,根据其相对位置构建拓扑图,并利用深度优先搜索(DFS)或状态压缩动态规划(DP)求解最小涂色次数。本文详细解析了该问题的建模思路与算法实现。 ... [详细]
  • 本题探讨如何通过最大流算法解决农场排水系统的设计问题。题目要求计算从水源点到汇合点的最大水流速率,使用经典的EK(Edmonds-Karp)和Dinic算法进行求解。 ... [详细]
  • 在网页开发中,页面加载速度是一个关键的用户体验因素。为了提升加载效率,避免在PageLoad事件中进行大量数据绑定操作,可以采用异步加载和特定控件来优化页面加载过程。 ... [详细]
  • 本文介绍了一种根据用户选择动态切换屏幕界面的方法,通过定义不同的选择块(Selection Block),实现灵活的用户交互体验。 ... [详细]
author-avatar
浆果范_163
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有