快速的查找问题的方法就是用sys登录oracle。并执行以下命令!
select * from v$flash_recovery_area_usage;
结果如下:
SQL> select * from v$flash_recovery_area_usage;
可以看到PERCENT_SPACE_USED的一个值是99.4而他对应的FILE_TYPE是ARCHIVELOG.所以大致可以知道是ARCHIVELOG已经满了!
我们可以再次确认一下!
Select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage 可以查看archivelog占了多大的空间,而show parameter recover可以知道系统分配了多少archivelog空间。
定位archivelog! show parameter recover可以看到db_recovery_file_dest的路径。我电脑里面的路径是:/u01/app/oracle/flash_recovery_area;
删除无用的archivelog。进入rman,命令如下图:
查看有多少无用的log文件,命令如下图:
进行删除动作!
我的这个动作是连今天的log都会删除,要删什么时候的log还是要看系统自身。
·
删过期的log!一下的命令是删除过期的log,没有指定日期。
删除了archivelog之后我们再回来看看。空间只有0.0717G,使用率只有2.39%。
再次登录成功!