ORACLE 11G 单实例 磁盘文件系统 DG 归档日志删除脚本 基于RED HAT LINUX 5.3 X86 64BIT
Posted claireyuancy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ORACLE 11G 单实例 磁盘文件系统 DG 归档日志删除脚本 基于RED HAT LINUX 5.3 X86 64BIT相关的知识,希望对你有一定的参考价值。
近期做个DG的归档日志删除,
[[email protected] logs]crontab -l * 8 * * * sh /home/oracle/dbscripts/del_arc.sh
该脚本分别调用 生成 删除 校验 三个脚本
cat del_arc.sh #! /bin/bash source /home/oracle/.bash_profile sh /home/oracle/dbscripts/build_del_archivelog.sh >> /home/oracle/dbscripts/del_arch`date +%F_%H`.sh sleep 5 sh /home/oracle/dbscripts/del_arch`date +%F_%H`.sh >> /home/oracle/dbscripts/logs/del_arch`date +%F_%H`.log sleep 5 sh /home/oracle/dbscripts/crosscheck_archivelog.sh >> /home/oracle/dbscripts/logs/cross_check`date +%F_%H`.log
先看生成的
cat build_del_archivelog.sh sqlplus -s shark/235619<<EOF set heading off set linesize 1000 set echo off set feedback off set timing off set termout on set trimout off set trimspool on set newpage none select ‘rm -f ‘||name from v\$archived_log where applied=‘YES‘ and deleted=‘NO‘ and completion_time < trunc(sysdate); EOF
另外 生成的每行间距太大了,望各位不吝赐教下.
生成的删除脚本
]head del_arch2014-05-07_08.sh rm -f /arch_backup/1_24144_831167377.log rm -f /arch_backup/2_22765_831167377.log
就是Y的太大行间距了.
]cat crosscheck_archivelog.sh #! /bin/bash source /home/oracle/.bash_profile exec >> /home/oracle/dbscripts/logs/del_arch`date +%F_%H`.log $ORACLE_HOME/bin/rman target / <<EOF crosscheck archivelog all; delete noprompt expired archivelog all; #delete noprompt archivelog until time ‘sysdate-1‘; exit; EOF
这是最后个脚本 为 检验! 原本通过它来删除归档日志的 从注解中可知.
这个校验脚本主要是为了清理下归档信息. 假设该信息存放在控制文件里DG是删除不了的
以上是关于ORACLE 11G 单实例 磁盘文件系统 DG 归档日志删除脚本 基于RED HAT LINUX 5.3 X86 64BIT的主要内容,如果未能解决你的问题,请参考以下文章
oracle 11g 从+DATA迁移到+newdata ASM 磁盘组迁移