返回顶部
首页 > 资讯 > 数据库 >Oracle中闪回区存储空间报ORA-19815问题怎么办
  • 869
分享到

Oracle中闪回区存储空间报ORA-19815问题怎么办

2024-04-02 19:04:59 869人浏览 安东尼
摘要

这篇文章给大家分享的是有关oracle中闪回区存储空间报ORA-19815问题怎么办的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。查询Oracle的alert日志是发现ORA-1

这篇文章给大家分享的是有关oracle中闪回区存储空间报ORA-19815问题怎么办的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

查询Oracle的alert日志是发现ORA-19815告警日志,具体现象如下:

【现象】

ORA-19815: WARNING: db_recovery_file_dest_size of 214748364800 bytes is 85.22% used, and has 31746169856 remaining bytes available

【分析处理思路】

1、查询相关参数和视图

(1)查询db_recovery_file_dest_size和db_recovery_file_dest参数闪回区存储空间确定位置和大小。

(2)查询v$recovery_file_dest视图确定db_recovery_file_dest_size的使用情况。

(3)查询v$flash_recovery_area_usage视图确定那种文件占用空间。

2、解决方法主要考虑以下三个方面:

(1)如果db_recovery_file_dest_size 较小,修改db_recovery_file_dest_size 为更大的值。

(2)如果db_recovery_file_dest指定的目录空间不足,解决办法:

A、可另指定空间,将源db_recovery_file_dest中的文件拷贝到该空间下;

B、为该目录新增磁盘空间;

C、将该目录空间中的文件备份到其他目录,并进行压缩。

(3)通过RMAN删除已经失效的文件。

【实际操作】

1、查看db_recovery_file相关参数

sql> show parameter db_recovery
 
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      /home/erp_db_rec/db_recovery_d
                                                 est
db_recovery_file_dest_size           big integer 200G
[oraprod@erpdb erp_db_rec]$ pwd
/home/erp_db_rec
[oraprod@erpdb erp_db_rec]$ du -sh db_recovery_dest/
17G     db_recovery_dest/

根据参数可以判断db_recovery_file_dest 指定的目录足够大。

2、查看recovery file的使用率

SQL> set linesize 2000
SQL> col name fORM a40
SQL> col SPACE_LIMIT form 99999999999999
SQL> col SPACE_USED form 99999999999999
SQL> col NUMBER_OF_FILES form 9999
SQL> select rfd.NAME,rfd.SPACE_LIMIT,rfd.SPACE_USED,rfd.SPACE_USED/rfd.SPACE_LIMIT*100 as "Rate(%)",rfd.NUMBER_OF_FILES from v$recovery_file_dest rfd;
 
NAME                            SPACE_LIMIT      SPACE_USED    Rate(%)    NUMBER_OF_FILES
----------------------------------------              ---------------     ---------------   ----------    ---------------
/home/erp_db_rec/db_recovery_dest           214748364800    183002194944        85.2170377     736

查询发现已经使用了85.21%了。

3、查询是哪类文件占用空间

SQL> select file_type,
          percent_space_used        as used,
          percent_space_reclaimable as reclaimable,
          number_of_files           as "number"
     from v$flash_recovery_area_usage;
 
FILE_TYPE          USED    RECLAIMABLE   number
----------------------- ---------- ----------- ----------
CONTROL FILE       0           0          0
REDO LOG         0           0          0
ARCHiveD LOG       0           0          0
BACKUP PIECE     85.22           0        736
IMAGE COPY        0           0          0
FLASHBACK LOG       0           0          0
FOREIGN ARCHIVED LOG   0           0          0
AUXILIARY DATAFILE COPY  0           0          0

8 rows selected.

通过查询可知是BACKUP PIECE使用了recovery_file_dest统计的空间。

由上述查询可知:对db_recovery_file_dest和备份空间中的文件定期进行删除,但是在数据库层面为进行清理,导致v$recovery_file_dest视图将已删除的文件统计在内导致,判断通过RMAN删除无效的备份集可解决。

4、解决此问题的方法

(1)对backupset进行交叉检查。

RMAN> crosscheck backupset;
 
using channel ORA_DISK_1
 
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/erp_db_rec/db_recovery_dest/PROD/backupset/2017_11_07/o1_mf_annnn_TAG20171107T230006_f03lMQ9w_.bkp RECID=1405 STAMP=959468407
crosschecked backup piece: found to be 'EXPIRED'
......
......
backup piece handle=/home/erp_db_rec/db_recovery_dest/PROD/backupset/2017_11_09/o1_mf_annnn_TAG20171109T230007_f08vcrc8_.bkp RECID=1420 STAMP=959641208
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/erp_db_rec/db_recovery_dest/PROD/backupset/2017_11_09/o1_mf_annnn_TAG20171109T230007_f08vcrf1_.bkp RECID=1421 STAMP=959641208
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/erp_db_rec/db_recovery_dest/PROD/backupset/2017_11_09/o1_mf_annnn_TAG20171109T230007_f08vcrhd_.bkp RECID=1422 STAMP=959641208
crosschecked backup piece: found to be 'EXPIRED'
backup piece handle=/home/erp_db_rec/db_recovery_dest/PROD/backupset/2017_11_09/o1_mf_annnn_TAG20171109T230932_f08vxdxq_.bkp RECID=1426 STAMP=959641772
.......
backup piece handle=/home/erp_db_rec/db_recovery_dest/PROD/backupset/2018_03_22/o1_mf_annnn_TAG20180322T231231_fc7kz019_.bkp RECID=2963 STAMP=971478752
crosschecked backup piece: found to be 'AVAILABLE'
backup piece handle=/home/erp_db_rec/db_recovery_dest/PROD/autobackup/2018_03_22/o1_mf_s_971478753_fc7kz217_.bkp RECID=2964 STAMP=971478754
Crosschecked 1510 objects

(2)删除无效的备份集

RMAN> delete noprompt expired backupset;
 
using channel ORA_DISK_1
......
backup piece handle=/backup/rman_backup/20180219/level1backup/PROD_2218_1_5asrlg89.20180219 RECID=2573 STAMP=968540425
deleted backup piece
backup piece handle=/backup/rman_backup/20180219/level1backup/PROD_2217_1_59srlg89.20180219 RECID=2574 STAMP=968540425
deleted backup piece
backup piece handle=/backup/rman_backup/20180219/level1backup/PROD_2219_1_5bsrlg89.20180219 RECID=2575 STAMP=968540426
Deleted 1125 EXPIRED objects

(3)使用v$recovery_file_dest验证使用率

SQL> select rfd.NAME,rfd.SPACE_LIMIT,rfd.SPACE_USED,rfd.SPACE_USED/rfd.SPACE_LIMIT*100 as "Rate(%)",rfd.NUMBER_OF_FILES from v$recovery_file_dest rfd;
 
NAME                   SPACE_LIMIT      SPACE_USED    Rate(%)       NUMBER_OF_FILES
---------------------------------------- --------------- ---------------    ----------        ---------------
/home/erp_db_rec/db_recovery_dest     214748364800     18025081856    8.39358282       162

删除无效的备份集后,空间使用率变成8.39%。

(4)查询BACKUP PIECE 的使用情况

SQL> select file_type,
  2            percent_space_used        as used,
  3            percent_space_reclaimable as reclaimable,
  4            number_of_files           as "number"
  5       from v$flash_recovery_area_usage;
 
FILE_TYPE        USED RECLAIMABLE     number
----------------------- ---------- ----------- ----------
CONTROL FILE      0           0          0
REDO LOG        0           0          0
ARCHIVED LOG       0           0          0
BACKUP PIECE     8.39           0        162
IMAGE COPY       0           0          0
FLASHBACK LOG      0           0          0
FOREIGN ARCHIVED LOG  0           0          0
AUXILIARY DATAFILE COPY0           0          0

8 rows selected.

完整解决ORA-19815问题。

感谢各位的阅读!关于“Oracle中闪回区存储空间报ORA-19815问题怎么办”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

您可能感兴趣的文档:

--结束END--

本文标题: Oracle中闪回区存储空间报ORA-19815问题怎么办

本文链接: https://lsjlt.com/news/64860.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Oracle中闪回区存储空间报ORA-19815问题怎么办
    这篇文章给大家分享的是有关Oracle中闪回区存储空间报ORA-19815问题怎么办的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。查询Oracle的alert日志是发现ORA-1...
    99+
    2024-04-02
  • 基于ORA-19815闪回空间爆满问题的处理方法
    闪回区爆满问题也是经常会遇到的问题,最关键的是闪回设置大小以及归档被默认存放在了闪回目录,恰巧今天又遇到了这个问题,就记录下处理步骤,仅供遇到这类问题的人参考。 一、错误现象描述 1)应用端错误信息 E...
    99+
    2024-04-02
  • 处理Oracle数据库闪回区空间满的问题
    处理Oracle数据库闪回区空间满的问题作者:赵全文  网名:guestart 今天早上一到单位,发现EMCC上有一台数据库服务器的概览页面出现×××报警,查询alert_orcl13....
    99+
    2024-04-02
  • oracle存储过程执行报错ORA-12828该怎么办
    oracle存储过程执行报错ORA-12828该怎么办,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。    今天,一开发...
    99+
    2024-04-02
  • oracle 11g rac中出现ORA-01157问题怎么办
    这篇文章主要为大家展示了“oracle 11g rac中出现ORA-01157问题怎么办”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“oracle 11g ra...
    99+
    2024-04-02
  • 怎么解决Oracle ASM中报错ORA-00843 ORA-00849问题
    本篇内容主要讲解“怎么解决Oracle ASM中报错ORA-00843 ORA-00849问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么解决Oracle...
    99+
    2024-04-02
  • oracle中数据泵dump文件存放nfs报ORA-27054错误怎么办
    小编给大家分享一下oracle中数据泵dump文件存放nfs报ORA-27054错误怎么办,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解...
    99+
    2024-04-02
  • DataGuard中主库表空间新增数据文件、备库无法创建报错ORA-01274怎么办
    小编给大家分享一下DataGuard中主库表空间新增数据文件、备库无法创建报错ORA-01274怎么办,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! 问题描述 主库环境:Oracle ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作