当前位置:首页 > 技能相关 > ORACLE > 正文内容

Oracle 正确删除archivelog文件(归档日志)

admin8个月前 (09-21)ORACLE4100 修订时间:2024-09-21 09:47:36

Oracle在开启了归档模式后,会在指定的archive目录下产生很多的archivelog文件,而且默认是不会定期清除的,时间长久了,该文件夹会占用很大的空间。

问题:如何定期正确删除archivelog文件呢? 很多人直接在archive目录下删除文件,这样其实不能达到在Oracle CLF文件中删除文件记录的效果。

archivelog文件位置: app/oracle/archivelog/XXXX.log

正确方法:

1.用RMAN连接目标DB:在命令行界面输入以下命令

rman target sys/密码@数据库服务名
(数据库服务名可以不输入)
例如:$ rman target sys/mdmchalco
     $ rman target sys/mdmchalco@mdmzl

或者在服务器电脑

rman target /

如图:

2345截图20240921092408.png

2.在RMAN命令窗口中,输入如下命令, 清理日志:

2.1 直接删除目前的归档日志:(RMAN之后的命令,可能需要确认,输入"YES"即可)

RMAN> delete archivelog all;

2.2 下线日志,然后删除失效的归档日志

RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;

或者删除指定时间之前的archivelog:

RMAN> DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';

(指定删除7天前的归档日志)

2345截图20240921092702.png

3.其它相关命令:

查看归档日志列表:

RMAN> list archivelog all;

查看失效的归档日志列表:

RMAN> list expired archivelog all;

4.定期清除archivelog (windows环境下):

可以将如下代码写成.bat文件,在控制面版的任务计划下添加新的定时任务:

RMAN target sys/*@orcl crosscheck archivelog all;
delete expired archivelog all;

5.退出RMAN

RMAN> quit
 您阅读本篇文章共花了: 

免责声明
本站内容均为博客主本人日常使用记录的存档,如侵犯你的权益请联系:lifei@zaiheze.com 546262132@qq.com 沟通删除事宜。本站仅带访问端口形式使用,已杜绝搜索引擎爬取。

扫描二维码推送至手机访问。

版权声明:本文由LIFEI - blog发布,如需转载请注明出处。

本文链接:http://www.lifeiai.com/?id=413

分享给朋友:

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。