Oracle 在开启了归档模式后,会在指定的archive目录下产生很多的archivelog文件,而且默认是不会定期清除的,时间长久了,该文件夹会占用很大的空间。
问题:如何定期正确删除archivelog文件呢?
很多人直接在archive目录下删除文件,这样其实不能达到在Oracle CLF文件中删除文件记录的效果。
正确方法:
1.用RMAN 连接目标DB:
su - oracle (多实例的时候会让你选择)
RMAN target sys/*****(密码随意输入)
2.在RMAN命令窗口中,输入如下命令:
crosscheck archivelog all;
delete expired archivelog all; (删除过期的日志)
或者删除指定时间之前的archivelog:
DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';(指定删除7天前的归档日志)
3.其它相关命令:
查看归档日志列表:
list archivelog all;
查看失效的归档日志列表:
list expired archivelog all;
4.定期清除archivelog :
可以将如下代码写成.bat文件,在控制面版的任务计划下添加新的定时任务:
RMAN target sys/*****@orcl(实例名)
crosscheck archivelog all;
delete expired archivelog all;
建议删除前备份归档日志文件。
数据无价!
问题:如何定期正确删除archivelog文件呢?
很多人直接在archive目录下删除文件,这样其实不能达到在Oracle CLF文件中删除文件记录的效果。
正确方法:
1.用RMAN 连接目标DB:
su - oracle (多实例的时候会让你选择)
RMAN target sys/*****(密码随意输入)
2.在RMAN命令窗口中,输入如下命令:
crosscheck archivelog all;
delete expired archivelog all; (删除过期的日志)
或者删除指定时间之前的archivelog:
DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';(指定删除7天前的归档日志)
3.其它相关命令:
查看归档日志列表:
list archivelog all;
查看失效的归档日志列表:
list expired archivelog all;
4.定期清除archivelog :
可以将如下代码写成.bat文件,在控制面版的任务计划下添加新的定时任务:
RMAN target sys/*****@orcl(实例名)
crosscheck archivelog all;
delete expired archivelog all;
建议删除前备份归档日志文件。
数据无价!
本文详细介绍了如何使用RMAN工具定期清理Oracle归档日志文件,包括使用命令进行检查、删除过期日志及设置定时任务,确保数据库空间的有效管理。
1万+

被折叠的 条评论
为什么被折叠?



