当前位置:网站首页>Dataguard 主备清理归档设置

Dataguard 主备清理归档设置

2022-07-07 21:53:00 Joyce.Du

cat /rmancc/shell/rmanlog.sh

#!/bin/sh

export ORACLE_SID=cc

rman target / <<EOF

run{

sql 'alter system archive log current' ;

backup format '/rmancc/%d_log_%T_%U' archivelog until time 'sysdate' delete all input ;

delete noprompt obsolete;

}

quit;

EOF

cat /rmancc/shell/rmanlog_clear.sh

#!/bin/sh

export ORACLE_SID=cc

rman target / <<EOF

run{

crosscheck archivelog all;

delete noprompt expired archivelog all;

delete noprompt archivelog  until time 'sysdate';

}

quit;

EOF

PR端:

root crontab 清理archivelog部分:

0,30 * * * * su - oracle -c "/rmancc/shell/rmanlog.sh" 1>>/rmancc/shell/rmanlog.log 2>>/rmancc/shell/rmanlog.err

#0,30 * * * * su - oracle -c "/rmancc/shell/rmanlog_clear.sh" 1>>/rmancc/shell/rmanlog_clear.log 2>>/rmancc/shell/rmanlog_clear.err

DR端:

root crontab 清理archivelog部分:

#0,30 * * * * su - oracle -c "/rmancc/shell/rmanlog.sh" 1>>/rmancc/shell/rmanlog.log 2>>/rmancc/shell/rmanlog.err

0,30 * * * * su - oracle -c "/rmancc/shell/rmanlog_clear.sh" 1>>/rmancc/shell/rmanlog_clear.log 2>>/rmancc/shell/rmanlog_clear.err

当容灾切换时,需要将PR端的crontab转为DR端的crontab;

将DR端的crontab转为PR端的crontab;

回切后再恢复原来的crontab

注意:

(1)当dr的mrp进程没起,但是数据库起着(tnsname通),pr的归档会由pr的lns正常传输到dr,此时dr的归档删除的脚本无法删除没有应用的归档,报错如下:

RMAN-08137: warning: archived log not deleted, needed for standby or upstream capture process

所以dr的归档目录很容易满,一旦dr的归档目录满,就会导致pr无法继续传输归档,从而导致pr端的归档无法正常删除,删除的时候也会报RMAN-08137: warning: archived log not deleted, needed for standby or upstream capture process,最后导致pr归档满,引发故障;

(2)如果dr的监听异常,pr无法传输归档到dr,pr无法正常备份删除

原网站

版权声明
本文为[Joyce.Du]所创,转载请带上原文链接,感谢
https://blog.csdn.net/du18020126395/article/details/125664023