
1.查询归档路径
archive log list;
show parameter db_recovery
找到位置后把日志手动rm删除掉,这里只是清理了文件不能释放空间,所以要用rman释放空间
2.rman清理,删除归档后,要用rman维护控制文件,否则空间显示仍然不释放
rman target /
list archivelog all;#查看所有日志情况
list expired archivelog all; #查看过期日志
crosscheck archivelog all; #检查一些无用的archivelog
show parameter control_file_record_keep_time; #查看控制文件保留的时长天数,基于nocatlog的rman备份信息放在控制文件中,大小有限制,所以控制文件只保留一段时间备份信息。(此参数仅适用于控制文件中可循环重用的记录,如归档和备份记录)空间足够没必要覆盖,备份信息过多才会自动清理。
delete archivelog all completed before ‘sysdate-3’;#删除截止到前三天的所有archivelog
delete expired archivelog all; #删除过期的归档
3.附 开启归档
SQL> alter system set log_archive_dest_1 = 'location=/u01/app/oracle/arch' scope=spfile;
SQL> alter system set log_archive_format='%t_%s_%r.arc' scope=spfile;
SQL> shutdown immediate;
SQL> startup mount;
SQL> alter database archivelog;
SQL> alter database open;
SQL> alter system switch logfile;