解决Oracle数据库归档日志占满磁盘空间问题

时间:2022-01-08 04:36:26

1、常用命令

?
1
2
3
4
5
SQL> show parameter log_archive_dest;
SQL> archive log list;
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;
ARCHIVELOG        96.62            0       141
SQL> select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;

2.9904

?
1
2
3
SQL> show parameter recover;
db_recovery_file_dest        string      /u01/oracle/flash_recovery_area
db_recovery_file_dest_size    big integer  2G

2、删除日志

?
1
cd $ORACLE_BASE/flash_recovery_area/orcl/archivelog

转移或清除对应的归档日志, 删除一些不用的日期目录的文件,注意保留最后几个文件在删除归档日志后,必须用RMAN维护控制文件,否则空间显示仍然不释放。

3、删除RMAN过期备份

?
1
2
3
rman target sys/password
RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;

或者

?
1
RMAN> delete archivelog until time “sysdate-1″;

4、再查

?
1
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;

5、修改大小

?
1
SQL> alter system set db_recovery_file_dest_size=4G scope=both;

总结

以上所述是小编给大家介绍的解决Oracle数据库归档日志占满磁盘空间问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:https://www.cnblogs.com/llill/p/7675964.html