如果我们打开oracle的归档模式,那么在数据文件吞噬着硬盘空间的同时,归档文件也在无声无息中占用着我们的硬盘空间
一般生产系统都会有良好的备份机制,所以归档日志是可以删除的,下面就是通过脚本的方式将它们安全删除掉的方法:
vi delet_archive.sh
. /home/oracle/.bash_profile
LOGFILE=/data/rman/rman_delete.log
RMAN=$ORACLE_HOME/bin/rman
WEEK=$((`date +%w`))
date=`date +%Y-%m-%d`
echo "----------------------------begin backup ----------------------------------" >> $LOGFILE
date >>$LOGFILE
sh /data/rman/script/archive_delete.rman $RMAN $LOGFILE
date >>$LOGFILE
echo "---------------------------end backup ---------" >> $LOGFILE
vi archivelog_delete.sh
$ORACLE_HOME/bin/rman <<EOF
connect target sys/password@mydb
crosscheck archivelog all;
delete noprompt expired archivelog all;
delete noprompt archivelog until time 'sysdate-7';
exit;
EOF
脚本编写好后,在 oracle 用户下使用 crontab -e 进行编辑 设定定时执行的时间:
30 0 * * * sh /data/rman/script/rman_delete.sh
最后转贴一点别人的成果:
删除acrhivelog,最好用rman delete, 实际上在写脚本的时候,用OS的rm删除archivelog路径下的物理文件也可以,
然后执行 crosscheck 和 delete expired ,但是这种方法在遇到ASM存储的时候实现起来会比较麻烦,所以建议用rman delete的方法。
另外,用 rman delete的时候可能会报:
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
尝试删除归档日志,oracle提示这些归档日志还要用到standby数据库上面,不让删除,
这个特点不错,可以避免由于没有同步standby而误删除archivelog的情况。
要删除,需要加上FORCE删除就可以了。
分享到:
相关推荐
oracle rman占用磁盘空间,利用Windows计划任务执行该脚本释放空间,脚本内相关路径需根据实际情况进行更改
rman 清理过期归档日志,oracleg归档日志满了,可以使用的
实际生产数据库中可以使用的rman备份脚本。写得很不错,dba可以下来学习研究
利用RMAN删除指定几时间前的归档.这是我的日常操作记录,供参考!
Oracle Rman增量备份Level012脚本,公司用的oracle rac,asm的备份恢复都是通过RMAN,已实践!!
rman备份策略及脚本
【RMAN】RMAN脚本中使用替换变量--windows 下rman全备脚本【RMAN】RMAN脚本中使用替换变量--windows 下rman全备脚本【RMAN】RMAN脚本中使用替换变量--windows 下rman全备脚本
本文主要描述Oracle DB 在使用rman进行恢复时,如何利用rman注册备份集的方式达到主库和目标库数据一致的目的。当然Oracle数据库的话使用DG或ADG技术、或者rman的duplicate技术都是非常好的选择。
Linux环境下rman备份的实例脚本
oracle rman 增量自动备份脚本,只需要在crontab添加脚本即可。
一个oracle自动备份脚本!
window oracle rman 增量备份脚本
oracle rman备份的脚本,公司近段时间改用rman备份。大家可以看看
RMAN本地备份shell脚本
1,查看当前归档模式 SQL> archive log list; Database log mode No Archive Mode Automatic archival Disabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 210 Current log ...
oracle归档日志步骤+RMAN步骤 . set ORACLE_SID=EKP sqlplus /nolog conn / as sysdba SQL> archive log list; show parameter db_reco show parameter log_archive alter system set db_recovery_file_...
此部分为针对Oracle rman 备份的监控脚本,此脚本为shell scripts,通过linux 系统的shell command 进行监控每次备份的状态并发送邮件进行通知。
RMAN备份脚本,set oracle_sid=XX rman target / msglog D:\oracleBAK\oracleBackupScript\logs\%date:~0,4%-%date:~5,2%-%date:~8,2%.log cmdfile=D:\oracleBAK\oracleBackupScript\...定期执行这段代码调用脚本就好了
rman冷备全备数据库脚本(本机备份与恢复)-详细文档笔记总结
基于oracal11g的一键备份脚本,可以完成物理备份等等等等