ITPub博客

首页 > 数据库 > Oracle > Oracle DG 归档日志管理 (standby)

Oracle DG 归档日志管理 (standby)

原创 Oracle 作者:lovehewenyu 时间:2012-04-17 10:11:16 0 删除 编辑

 

# .bash_profile

### 这里是提取用户的变量

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

        .  ~/.bashrc

fi

 

# User specific environment and startup programs

 

PATH=$PATH:$HOME/bin

 

export PATH

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=/opt/oracle/product/10g

export ORACLE_SID=orcl

export LD_LIBRARY_PATH=$ORACLE_HOME/lib

export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin

 

export SHELL_DIR=/u01/scripts

 

 

 

del_seq=`ls /u01/arch/|head -1|cut -f2 -d_`

 

echo $del_seq

 

$ORACLE_HOME/bin/sqlplus -s "sys/oracle@orcl as sysdba" </u01/scripts/max_sn.log

 

set head off;

 

set feedback;

 

select max(sequence#) from v\$archived_log where applied='YES';

## 这里我找出已经应用的最大归档文件   \$   转义了$  

exit;

 

eof

 

max_sn=`cat /u01/scripts/max_sn.log|awk '{print $1}'|grep ^[0-9]`

 

max_sn=`expr $max_sn - 10`

 

## 我这里是保留最近的10个已经应用归档文件,这个具体情况自己决定

 

echo $max_sn

 

while [ $del_seq -lt $max_sn ]

 

do

 

  rm  -f /u01/arch/1_"$del_seq"_ 732454468 .dbf

 

##   这里是我定义归档文件的格式,具体根据自己的归档文件格式来匹配,关键是匹配日志的sequence no。

 

  del_seq=`expr  $del_seq + 1`

 

  echo  $del_seq

 

done

 

 

 

## 脚本里的红色部分根据自己的情况进行修改

 

 

 

 本文是参考了 http://blog.csdn.net/tianlesoftware/article/details/6194498 综合了自己的实际情况写出。

在此忠诚的感谢各位技术达人可以在网络上共享自己的经验,让我们这些学习者有更多的学习机会。忠诚的感谢,在此我也会把自己的学习成果和技术文档给大家一起分享一起学习。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/26442936/viewspace-721393/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: dba 职责
请登录后发表评论 登录
全部评论
10年金融行业老鸟。Oracle,Mysql,PostgreSQL,EMC 存储,NBU备份。微信/电话 18211103995

注册时间:2012-02-03

  • 博文量
    307
  • 访问量
    1528522