自动清理Oracle归档日志,alter日志,监听日志,审计日志

#crontab
30 8 * * * /ora/u01/scripts/clean_log.sh > /dev/null 2>&1

#######################################################################
################archive log
#!/bin/bash
. /home/oracle/.bash_profile

--------------------

#every day archivelog about 400G

--------------------

export ORACLE_SID=ORCL
$ORACLE_HOME/bin/rman log=/oracle/archlog/ORCL/clean.log <<EOF
connect target /
run{
crosscheck archivelog all;
delete noprompt expired archivelog all;
delete noprompt archivelog all completed before ‘sysdate - 3’;
}
exit;
EOF

#################arlert log
#!/bin/bash
#---------------------
#alert about 30m every month
#---------------------
cd O R A C L E B A S E / d i a g / r d b m s / O R C L / {ORACLE_BASE}/diag/rdbms/ORCL/ ORACLEBASE/diag/rdbms/ORCL/ORACLE_SID/trace
export SIZE=du -m alert_${ORACLE_SID}.log | cut -f1
if [ KaTeX parse error: Expected 'EOF', got '#' at position 23: …-ge 30 ]; then #̲cp alert_{ORACLE_SID}.log /oracle/rmanbackup/oracle_log/alert/alert_KaTeX parse error: Expected group after '_' at position 49: ….log cp alert_̲{ORACLE_SID}.log /oracle/rmanbackup/oracle_log/alert/alert_KaTeX parse error: Expected 'EOF', got '#' at position 39: …m%d%H%M%S`.log #̲cat /dev/null >…{ORACLE_SID}.log
truncate -s 0 alert_${ORACLE_SID}.log
fi
find . -mtime +30 -name “.trc" | xargs rm -rf
find . -mtime +30 -name "
.trm” | xargs rm -rf

#################listener log
#!/bin/bash
#---------------------
#listener.log about 100m every 8 month,listener.xml about 200m every month
#---------------------
cd $ORACLE_BASE/diag/tnslsnr/hostname/listener/trace
export SIZE=du -m listener.log | cut -f1
if [ $SIZE -ge 100 ]; then
#lsnrctl set log_status off
#mv listener.log /oracle/rmanbackup/oracle_log/listener/listener_date +%Y%m%d%H%M%S.log
cp listener.log /oracle/rmanbackup/oracle_log/listener/listener_date +%Y%m%d%H%M%S.log
truncate -s 0 listener.log
#lsnrctl set log_status on
fi
cd $ORACLE_BASE/diag/tnslsnr/hostname/listener_orcl/alert
find . -mtime +30 -name “log_*.xml” | xargs rm -rf

#################audit log
#!/bin/bash
#---------------------
#audit log about 2GB every month,but aud$ table will exist system tablespace,please noted
#---------------------
cd $ORACLE_HOME/rdbms/audit
find . -mtime +30 -exec mv {} /oracle/rmanbackup/oracle_log/audit ;

exit

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值