查看oracle的归档日志及空间占用率,清除归档日志

select * from v$flash_recovery_area_usage; –查看空间占用率

 select * from v$recovery_file_dest;  –查看归档日志的存放地址;

使用rman清空归档日志

     crosscheck archivelog all;  –查看可以所有的归档文件

     delete expired archivelog all; –清空过期的归档文件

 如何确认归档日志是否过期,rman有一个保留策略,可以定义多少天之前的日志算为过期;

      
   CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 14 DAYS;

 

   让恢复窗口成为14天大小。
  show all –查看所有的rman策略.

select count(*) from v$archived_log where archived=’YES’ and deleted=’NO’; –查看所有归档,未删除的归档日志 

二、 如何解决“归档日志已满问题”

问题描述:所用数据库为 Oracle 10g ,模式为归档模式,oracle 系统默认的归档空间为2G,由于日志过多,空间写满,数据库的redo文件不能归档,而出现oracle数据库挂起的问题。

oem打开oracle 10g 数据库操作界面,会显示如下错误信息:    “ 由于输出设备已满或不可用, 归档程序无法归档重做日志。”

数据库无法使用

现将解决办法稍作总结:

方法一:增大归档日志空间的大小

可以通过下面的方法来调整系统的回闪恢复区大小:
首先是关闭数据库:以SYS身份链接到oracle,执行>shutdown immediate;
启动数据库到mount状态:>startup mount
查看回闪恢复区的大小和存放目标:>show parameter db_recovery_file_dest
修改回闪恢复区的大小>alter system set db_recovery_file_dest_size = 4G(缺省是2G,可以根据实际情况调整大小)
最后打开数据库:>alter database open;

  OK , 问题解决。数据库恢复使用。

    原文作者:Gecko (脑)
    原文地址: https://blog.csdn.net/tanrt/article/details/108681873
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞