新删除data guard归档日志shell脚本

联系:手机(13429648788)  QQ(107644445)

链接:https://www.orasos.com/%e6%96%b0%e5%88%a0%e9%99%a4data-guard%e5%bd%92%e6%a1%a3%e6%97%a5%e5%bf%97shell%e8%84%9a%e6%9c%ac.html

标题:新删除data guard归档日志shell脚本

作者:惜分飞©版权所有[文章允许转载,但必须以链接方式注明源地址,否则追究法律责任.]

以前写过删除dataguard归档日志的方法(删除data guard归档日志),但是以前的方法确实不够灵活也不够简便,现在提供最新的一次在客户现场部署的dg删除归档日志的shell脚本

#!/bin/sh
source ~/.bash_profile

grep "Media Recovery Log" $ORACLE_BASE/admin/$ORACLE_SID/bdump/alert_${ORACLE_SID}.log|
\ awk '{print $4}'|sed -e 's/^/rm /' >/tmp/rmarchlog.sh
chmod +x /tmp/rmarchlog.sh

/tmp/rmarchlog.sh
cd $ORACLE_BASE/admin/$ORACLE_SID/bdump

cat alert_${ORACLE_SID}.log >>alert_${ORACLE_SID}.log.bak
echo ''>alert_${ORACLE_SID}.log

rm -f /tmp/rmarchlog.sh


$ORACLE_HOME/bin/rman target / <<XIFENFEI
crosscheck archivelog all;
delete expired archivelog all;
YES
exit;
XIFENFEI

根据alert日志中dg应用日志的信息”Media Recovery Log”信息来删除掉相关的归档日志,可以保证应用过的归档日志都被删除,而没有应用的归档日志都保留.

2 thoughts on “新删除data guard归档日志shell脚本

  1. 用这个”Media Recovery Log”条件来判断删除备库归档日志,可能会存在漏删的情况

    因为,当备份处在Real Time apply的模式下
    应用日志,有时会产生”Recovery of Oline redo log”的输出,而没有”Media Recovery Log”这个的输出,所以会出现漏删的情况

Comments are closed.