免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 8635 | 回复: 7
打印 上一主题 下一主题

Crontab中加入删除归档日志SHELL [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-12-21 16:54 |只看该作者 |倒序浏览
环境:
OS:HP-UX
Database:Oracle10g
自动归档日志路径:/oracle/oradata/archivelog
归档日志文件格式:1_23310_543268344.dbf
                           1_23839_543268344.dbf  
                           1_24368_543268344.dbf
                     
需求:
需要在每天凌晨4点钟删除前两天生成的归档日志文件



请大家帮帮忙,小弟在此谢了先。

论坛徽章:
0
2 [报告]
发表于 2005-12-21 17:08 |只看该作者
用rman 工具吧,备份后删除所有日志.

export Oracle_HOME=/u01/ora10g

su - oracle -c "${Oracle_HOME}/bin/rman target / nocatalog"
run {
ALLOCATE CHANNEL ch00 TYPE 'SBT_TAPE' ;
BACKUP
   filesperset 20
   FORMAT 'al_%s_%p_%t'
   ARCHIVELOG ALL DELETE INPUT;
RELEASE CHANNEL ch00;
}

论坛徽章:
0
3 [报告]
发表于 2005-12-21 17:45 |只看该作者
谢谢,pandaxiong0523

我现在是想采用: 在crontab里定义定时执行指定shell,shell里写上如何删除两天前生成的归档日志,这种方式完成。

论坛徽章:
0
4 [报告]
发表于 2005-12-21 18:01 |只看该作者
crontab -e

59 03 * * * find /oracle/oradata/archivelog  -mtime -2 | xargs rm -rf

论坛徽章:
0
5 [报告]
发表于 2005-12-21 20:10 |只看该作者
3Q !

论坛徽章:
0
6 [报告]
发表于 2005-12-22 10:24 |只看该作者
由于生产环境我先将归档日志tar至/tmp/archivelog目录,进行此命令测试。
我运行find /tmp/archivelog  -mtime -2 | xargs rm –rf 命令后系统将我/tmp/archivelog目录中所有数据全都删除了。
疑问:
1、我执行find /tmp/archivelog  -mtime -2 后查出来的是近两天生成的数据;
    应该是执行find /tmp/archivelog  -mtime +2后查出来的是两天前生成的数据吧;
2、另外xargs rm -rf 是什么意思,我想删除两天前生成的数据,为何将我此目录下的数据全部删掉呢?

此问题很急,谢谢各位,帮帮小弟。。。。

论坛徽章:
0
7 [报告]
发表于 2005-12-22 14:04 |只看该作者
问题解决了,问题出在xargs rm -rf 中多了r
命令改为:find /tmp/archivelog  -mtime +2 |xargs rm -f
后即可将/tmp/archivelog  目录中两天前生成的数据删除。

论坛徽章:
2
IT运维版块每日发帖之星
日期:2015-12-26 06:20:00IT运维版块每周发帖之星
日期:2016-02-03 16:51:55
8 [报告]
发表于 2016-06-16 10:15 |只看该作者
和 r 没关系。和 mtime 有关。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP