Welcome 微信登录

首页 / 数据库 / MySQL / Oracle 10g rac standby 归档日志自动删除脚本

Oracle 10g rac standby 归档日志自动删除脚本#!/bin/bash
export ORACLE_HOME=/opt/oracle/product/10.2.0/db_1
export ORACLE_SID=standby1
export ARCHIVE_DIR=/log/archivelog
export LOG_FILE=/home/oracle/logs/del_archive.logif [ ! $1 ]
then
   sn=200
else
   sn=$1
fiecho "begin delete archivelog: `date`.......">>$LOG_FILE
if [ `whoami` != "oracle" ]
then
echo "Error: You must be oracle to execute.">>$LOG_FILE
exit 99
fiecho "delete archivelog thread 1">>$LOG_FILE
del_seq=`ls -tr $ARCHIVE_DIR/|grep -v stdarch |grep arch_1 | head -1|cut -f3 -d_`
$ORACLE_HOME/bin/sqlplus -silent "/ as sysdba" <<XFF>/home/oracle/logs/tmp1.log
set pagesize 0 feedback off verify off heading off echo off
select max(sequence#) from v$ARCHIVED_LOG where THREAD#=1 and APPLIED="YES";
exit;
XFF
max_sn=`cat /home/oracle/logs/tmp1.log`
rm /home/oracle/logs/tmp1.log -f
max_sn=$(( $max_sn - $sn ))
while [[ ${del_seq} -lt ${max_sn} ]]
do
  echo "${ARCHIVE_DIR}/arch_1_${del_seq}_794450242.arc">>$LOG_FILE
  rm ${ARCHIVE_DIR}/arch_1_${del_seq}_794450242.arc -f
  del_seq=$(( $del_seq + 1 ))
doneecho "delete archivelog thread 2">>$LOG_FILE
del_seq=`ls -tr $ARCHIVE_DIR/|grep -v stdarch |grep arch_2 | head -1|cut -f3 -d_`
$ORACLE_HOME/bin/sqlplus -silent "/ as sysdba" <<XFF>/home/oracle/logs/tmp2.log
set pagesize 0 feedback off verify off heading off echo off
select max(sequence#) from v$ARCHIVED_LOG where THREAD#=2 and APPLIED="YES";
exit;
XFF
max_sn=`cat /home/oracle/logs/tmp2.log`
rm /home/oracle/logs/tmp2.log -f
max_sn=$(( $max_sn - $sn ))
while [[ ${del_seq} -lt ${max_sn} ]]
do
  echo "${ARCHIVE_DIR}/arch_2_${del_seq}_794450242.arc">>$LOG_FILE
  rm ${ARCHIVE_DIR}/arch_2_${del_seq}_794450242.arc -f
  del_seq=$(( $del_seq + 1 ))
doneecho "end delete archivelog: `date`....">>$LOG_FILE
$ORACLE_HOME/bin/rman target / <<EOF>>$LOG_FILE
crosscheck archivelog all;
delete noprompt expired archivelog all;
exit;
EOFecho "....................................">>$LOG_FILE更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12RMAN备份报错Message file RMAN<lang>.msb not foundOracle RAC SSH等价性配置相关资讯      Oracle 10g RAC 
  • Oracle 10G RAC一节点系统重做后修  (06月26日)
  • Oracle 10g RAC OCFS2集群存储迁移  (01/22/2015 20:19:51)
  • Oracle 10g下修改RAC地址  (07/29/2014 20:54:32)
  • Oracle 10g RAC修改IP/VIP地址示例  (04月27日)
  • 搭建Oracle 10g RAC过程中出现 OUI  (08/08/2014 11:04:18)
  • Oracle 10g RAC 节点自动重启故障  (07/03/2014 21:33:11)
本文评论 查看全部评论 (0)
表情: 姓名: 字数