oracle dg脚本,贴一个自己编的删WINDOWS下DG归档日志的脚本

这段时间认真学习了一下Data Guard的一些知识, 在学习过程中得到了ITPUB上不少DX的帮助, 昨天把生产上的两套ORACLE在同一台机器上作好了DG, 呵呵, 现在放心多了.

再此再感谢一下所有帮助过我的人.

怕自己忙起来忘了删DG上的归档文件, 早上编了一个删DG上归档日志的脚本,  在此贡献出来, 希望对大家有点小用处.

脚本说明:

1. WINDOWS平台上使用

2. 使用时只需把前面几个参数改成自己的实际情况就行了

3. KEEP_DAY是指归档日志多保存的天数, 如果是0, 那么应用过的就会删掉

4. 在WINDOWS中用at 加入自动运行就可以了, SKLW和LCBJ是我机器上的DG的SERVER_NAME

@echo off

rem Oracle Data Guard archivelog delete scripts

rem Create by Kangoo.

rem 2008/2/14

if "%1" == "sklw" goto paramok

if "%1" == "SKLW" goto paramok

if "%1" == "lcbj" goto paramok

if "%1" == "LCBJ" goto paramok

echo "Usage: %0 {sklw|lcbj}"

goto finish

4f06a01a81d5603cca001c0e92e5ebda.gifaramok

set ORACLE_SID=%1

set ORACLE_HOME=D:\ORACLE\ORA92

set CMDFILE_PATH=D:\DG_SCRIPTS

set TMP_FILE1=%CMDFILE_PATH%\%ORACLE_SID%1SQLPLUSDUSS1PQQX.TMP

set TMP_FILE2=%CMDFILE_PATH%\%ORACLE_SID%2SQLPLUSCMDDSIPTS.TMP

set TMP_FILE3=%CMDFILE_PATH%\%ORACLE_SID%3RMANSCRIPTSSASDF.TMP

set KEEY_DAY=5

echo @%TMP_FILE2% > %TMP_FILE1%

echo EXIT >> %TMP_FILE1%

echo SET FEED OFF > %TMP_FILE2%

echo SET HEADING OFF >> %TMP_FILE2%

echo SET ECHO OFF >> %TMP_FILE2%

echo SET TERMOUT OFF >> %TMP_FILE2%

echo SET NEWPAGE NONE >> %TMP_FILE2%

echo SET LONG 90000 >> %TMP_FILE2%

echo SET SQLBLANKLINES ON >> %TMP_FILE2%

echo SPOOL %TMP_FILE3% >> %TMP_FILE2%

echo SELECT 'delete noprompt copy of archivelog sequence ' ^|^| sequence# ^|^| ';' >> %TMP_FILE2%

echo FROM v$archived_log >> %TMP_FILE2%

echo WHERE NOT (status = 'D' OR deleted = 'YES') >> %TMP_FILE2%

echo AND applied = 'YES' AND completion_time ^< trunc(sysdate-%KEEY_DAY%) >> %TMP_FILE2%

echo UNION >> %TMP_FILE2%

echo SELECT 'exit' FROM dual; >> %TMP_FILE2%

echo SPOOL OFF >> %TMP_FILE2%

echo EXIT >> %TMP_FILE2%

%ORACLE_HOME%\bin\sqlplus.exe "/ as sysdba" < %TMP_FILE1%

%ORACLE_HOME%\bin\rman.exe target / cmdfile=%TMP_FILE3%

DEL %TMP_FILE1%

DEL %TMP_FILE2%

DEL %TMP_FILE3%

:finish

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值