视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
Oracle教程:自动删除指定日期之前的归档日志
2020-11-09 12:00:17 责编:小采
文档


最近遇到一个很BT的项目,通过数据库的镜像盘阵进行RMAN备份,生产环境中产生的归档日志需要定时清除。而且,由于镜像盘阵是在备

背景:

最近遇到一个很BT的项目,通过数据库的镜像盘阵进行RMAN备份,生产环境中产生的归档日志需要定时清除。而且,由于镜像盘阵是在备份时才进行同步,所以在生产环境中删归档时,还需要至少保留最近1天的归档。操作系统为AIX5.3和AIX6.1。

解决方案:

1、如果归档日志是放在文件系统下,可采用下述方法:

find . -mtime +20 -mtime -30 -exec rm -fr {} \; (找出当前目录下,前20至30天之间生成的文件,并删除之;

2、本次项目使用ASM作为归档存放地,该命令在asmcmd中无法使用,遂有更通用的解决方案:

通过RMAN 登陆:

DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';(指定删除7天前的归档日志)

或者

delete archivelog until time "sysdate - 7";

由于这两条语句在执行时,先列出符合条件的归档日志,,然后询问是否需要删除,所以自动删除的脚本(autoDelArchive.sh)为:

export Oracle_SID=testdb

rman target / > delarchive.log << EOF

delete archivelog until time "sysdate - 7";

YES

exit

EOF

接下来,制定执行计划,放到crontab中,over。

下载本文
显示全文
专题