ORACLE 删除归档日志连接rman查看归档日志占有率
我们都知道在controlfile中记录着每一个archivelog文件的相关信息,当然们在OS下把这些物理文件delete掉后,在我们的controlfile中仍然记录着这些archivelog文件的相关信息,在oracle的OEM管理器中有可视化的日志展现出,当我们手工清除 archive目录下的文件后,这些记录并没有被我们从controlfile中清除掉,也就是oracle并不知道这些文件已经不存在了,这时候我们要做手工的清除的话,下面我经过实验,可以尝试这种方法:
1. 进入rman
C:\User\Administrator>rman
2. connect target /
RMAN> connect target /
3.查看归档日志的状态
RMAN> list archivelog all;
4.手工删除归档日志文件
RMAN> DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';
SYSDATA-7,表明当前的系统时间7天前
这样做仍然会在RMAN里留下未管理的归档文件,它的作用还是相当于直接用操作系统命令将归档日志文件直接删除,而ORACLE控制文件并不知道,因此仍需要在RMAN里执行下面2条命令:
crosscheck archivelog all;
delete expired archivelog all;
5.退出rman
RMAN> exit
6.查看归档日志占有率
退出RMAN
输入sqlplus连接oracle
然后SQL> select * From v$flash_recovery_area_usage; ---------这里可以看到闪回恢复区里的空间占有率情况:
select * from v$recovery_file_dest; --查看归档日志的存放地址;
本文地址:https://blog.csdn.net/qq_36135335/article/details/85984344