Oracle Data Guard 是通过归档文件来进行数据同步的。 主库的归档文件,我们可以在RMAN 备份的时候进行删除,但是备库的归档文件无法自动删除,需要写脚本来定时删除。
如果直接删除归档文件的话,可能会出现一种情况,就是归档文件还没有来的急apply,就被删除掉了。所以最安全的做法是在删除归档文件做一个判断。 然后在删除。
整理的一个删除备库的shell 脚本如下:
[oracle@qs-xezf-db2 scripts]$ cat del_st_archive.sh
#!/usr/bin/ksh
# created by tianlesoftware
# 2010/12/24
export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1
export ORACLE_SID=xxxx
export SHELL_DIR=/u02/scripts
del_seq=`ls /u02/archivelog/|head -1|cut -f2 -d_`
echo $del_seq
$ORACLE_HOME/bin/sqlplus -s "user/pwd@sid_pd as sysdba" <<eof >/u02/scripts/max_sn.log
set head off;
set feedback;
select max(sequence#) from v/$log_history;
exit;
eof
max_sn=`cat /u02/scripts/max_sn.log|awk '{print $1}'|grep ^[0-9]`
max_sn=`expr $max_sn - 30`
-- 我这里是保留最近的30个归档文件,这个具体情况自己决定
echo $max_sn
while [ $del_seq -lt $max_sn ]
do
rm /u02/archivelog/1_"$del_seq"_737806218.arc
-- 这里是我定义归档文件的格式,具体根据自己的归档文件格式来匹配,关键是匹配日志的sequence no。
del_seq=`expr $del_seq + 1`
echo $del_seq
done
--脚本里的红色部分根据自己的情况进行修改
[oracle@qs-xezf-db2 scripts]$ ls
del_st_archive.sh del_st_arch.log max_sn.log
--max_sn.log 是存放最大seq 的tmp文件。 用来进行比较的
添加到crontab,定时执行:
[oracle@qs-xezf-db2 scripts]$ crontab -l
00 6 * * * /u02/scripts/del_st_archive.sh >/u02/scripts/del_st_arch.log 2>&1
Linux Crontab 定时任务 命令详解
http://blog.csdn.net/tianlesoftware/archive/2010/02/21/5315039.aspx
------------------------------------------------------------------------------
Blog: http://blog.csdn.net/tianlesoftware
网上资源: http://tianlesoftware.download.csdn.net
相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
DBA1 群:62697716(满); DBA2 群:62697977(满)
DBA3 群:62697850 DBA 超级群:63306533;
聊天 群:40132017
--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请
分享到:
相关推荐
Oracle DG主备库删除归档脚本,包含了脚步使用说明
Oracle Data Guard 11g完全参考手册 oracle press
Data guard因为技术简单成熟,成本低廉(Oracle自带的功能,不需要单独购买),是广泛采用的一种数据库的高性能与容灾方案。 Oracle Data Guard 确保企业数据的高可用性、数据保护以及灾难恢复。
oracle data guard文档
《oracle data guard 11g完全参考手册》由多位顶尖oracle专家联袂撰写。这本精品指南全面介绍data guard无与伦比的数据保护、可用性和灾难恢复功能,详细讲解data guard基础知识,列出最佳的配置、监视、维护和故障...
Oracle Data Guard RAC TO RAC迁移方案(基于rman备份)V1.1.pdf
清理备库已经应用的归档日志
Oracle Data Guard 11g完全参考手册,中文版,比较清楚。
Data Guard Configurations,Primary Database,Standby Databases,Data Guard Services.,Redo Transport Services.,Apply Services, Role Transitions.,Data Guard Broker.,Using Oracle Enterprise Manager ...
Primary Database , Standby Databases , Far Sync Instances , Zero Data Loss Recovery Appliance, Redo Transport Services , Apply Services , Role Transitions , Oracle Data Guard Broker ,
Oracle Data Guard 概念和管理10g 版本2
Linux虚拟机下 配置ORACLE Data Guard (phycial-backup) ufida
oracle data guard概念和管理10g版本2
关于oracle data guard的详解
oracle rman占用磁盘空间,利用Windows计划任务执行该脚本释放空间,脚本内相关路径需根据实际情况进行更改
Oracle Data Guard技术介绍及配置分析
Oracle DataGurad主备库日常检查指南
oracle 11g data guard