Oracle数据库归档日志过满

昨天Oracle数据库无法打开,报错ora-09925:Unable to create audit trail file,经查,报错原因为数据库归档存储已满,无法创建新的归档日志导致数据库无法打开。

[oracle@tips ~]$ sqlplus / as sysdbaSQL*Plus: Release 11.2.0.3.0 Production on Mon Nov 26 04:27:58 2012Connected to an idle instance.SQL> startupORA-09925: Unable to create audit trail fileLinux-x86_64 Error: 2: No such file or directoryAdditional information: 9925SQL> exit复制代码

解决这种因归档存满数据库宕掉的问题有三种办法:

1.增大db_recovery_file_dest_size
2.更换归档日志路径
3.检查失效的归档日志文件,然后删除(或者删除N天以前的归档日志)

因为数据库无法正常进入,没有办法修改数据库的参数,所以我选择第三种。

首先找到归档日志存放路径,然后删除时间最久远的归档日志(删两个保证数据库可以开启即可)。

[oracle@YJH ~]$ cd /u01/flash_recovery_area/PROD/archivelog/
[oracle@YJH archivelog]$ ll
total 112
drwxr-x--- 2 oracle oinstall 4096 Feb 15 15:19 2018_04_09
drwxr-x--- 2 oracle oinstall 4096 Feb 15 15:19 2018_11_13
drwxr-x--- 2 oracle oinstall 4096 Feb 15 15:19 2018_11_16
drwxr-x--- 2 oracle oinstall 4096 Feb 15 15:19 2018_11_19
……复制代码

第二步:数据库可以开启后进入RMAN清理失效归档(最好可以先对数据库做好备份)

[oracle@YJH ~]$ rman target /

Recovery Manager: Release 11.2.0.1.0 - Production on 星期一 2月 25 11:03:41 2019

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

connected to target database: PROD (DBID=335947904)

RMAN> backup database format='/u01/myrman/prod_%s.bak' filesperset 3;
复制代码

查看全部归档日志:
RMAN> list
archivelog all;

清理失效归档日志:
RMAN> delete expired archivelog all;
RMAN> crosscheck archivelog all;

删除当前系统时间一天之前的全部归档日志:
RMAN> delete archivelog all completed before 'sysdate-1'; 

删除七天以内的归档日志:
RMAN> delete archivelog from time 'sysdate-7';
复制代码

数据库归档整理完成。

可以使用以下方式查询归档相关信息:

1.查看归档空间占用率

select * from v$flash_recovery_area_usage;
复制代码

2.查看归档日志存放位置

select * from v$recovery_file_dest;
复制代码

3.修改归档存储上限

SQL> alter system set db_recovery_file_dest_size=4294967296;        
4x1024x1024x1024)
System altered.
SQL> show parameter db_recovery_file
NAME                       TYPE       VALUE
----------------------- ----------- ------------------------------
db_recovery_file_dest     string    /u01/arch
db_recovery_file_dest_size   big integer 4G复制代码


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值