ORACLE 删除archivelog日志
监控信息
df -h 查看磁盘空间 /oracle 500G 已用 450G,剩余 50G
具体分析 /oracle/oraarch 421G 占绝对大头,看文件信息 ,从2023年以来一直没有做过日志删除
参考ORACLE 正确删除归档日志的方法_oracle 清理归档日志-CSDN博客
0. 切换账户
进入系统的是root权限,切换到特定账户 su - XXadm
1. 进入rman
[oracle@dthxdb2 ~]$ /u01/app/oracle/product/10.2.0/db/bin/rman
2. connect target /
RMAN> connect target /
3. crosscheck archivelog all;
crosscheck archivelog all:验证的是DB的归档日志即log_archive_dest参数指定位置的文件,当手工删除了归档日志以后,Rman备份会检测到日志缺失,从而无法进一步继续执行Rman备份,所以此时需要手工执行crosscheck过程,查看所有的归档日志文件是否都是正常的然后再来执行Rman备份。
4. delete expired archivelog all;
这时候我们再去OEM中就看不到这些日志文件了,如果你的从来没有做过这个动作的话,我们可以比较这个动作前的controlfile和动作后的controlfile的文件大小
-------------------------------------------------------------------------------------------------------------------------------
第一次执行后,df -h 磁盘空间没有减少,没有实际删除文件
rman下 执行DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';
在进行 delete expired archivelog all
磁盘空间从 420讲到280G左右,整体占比60% 警告解除
写于20241104 台州