Oracle rman 自动清理归档日志

Oracle归档日志清理:RMAN策略与自动化实践指南 在数据库管理中,数据备份与恢复是保障业务连续性的核心技术。其原理在于通过记录数据变更日志,确保在系统故障时能将数据恢复到特定时间点,这对于实现高可用性和灾难恢复至关重要。归档日志作为Oracle数据库重做日志的持久化副本,正是这一恢复机制的核心组件,它记录了数据库的所有历史变更,是执行时间点恢复的基础。从技术价值看,有效的归档日志管理不仅能确保数据安全,还能防止因日志空间耗尽导致的数据库挂起,直接影响生产系统的稳定性。在实际应用场景中,DBA需要定期清理不再需要的归档日志以释放磁盘空间,这通常通过Oracl 阅读详情

一、背景:

数据库开启归档日志,若不及时清理归档日志,系统就会报

ORA-00257: archiver error. Connect internal only, until freed

有没有自动清理归档脚本,不需要每次都手动清理呢?

当然有,实现自动清理归档日志,可以通过 Linux crontab,Oracle rman。


二、编写删除rman脚本

新建一个脚本clearLog.sh

${ORACLE_HOME}/bin/rman nocatalog log=/home/oracle/del_arch$(date +%Y-%m-%d).log  <<EOF
connect target /
#crosscheck archivelog all;
#delete noprompt expired archivelog all;
DELETE noprompt ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-11';
exit;
EOF

三、手动测试脚本

赋权:chomd +x clearLog.sh

执行:./clearLog.sh

ok,,查看del_arch.log,能删除归档。


四、添加至corntab

在oracle 用户下执行crontab -e

42 20 * * * /home/oracle/clearLOG.sh
晚上20:42分执行clearLog.sh


五、测试与验证

修改crontab中的clearLog.sh运行时间为系统时候后的1分钟 。


1、查看运行日志: more del_arch文件,并无内容

2、查看cron运行日志

more /var/log/cron

Jul  4 18:40:01 orac1 CROND[632]: (root) CMD (/usr/lib64/sa/sa1 1 1)
Jul  4 18:41:18 orac1 crontab[1415]: (oracle) BEGIN EDIT (oracle)
Jul  4 18:41:37 orac1 crontab[1415]: (oracle) REPLACE (oracle)
Jul  4 18:41:37 orac1 crontab[1415]: (oracle) END EDIT (oracle)
Jul  4 18:42:01 orac1 crond[3515]: (oracle) RELOAD (/var/spool/cron/oracle)
Jul  4 18:42:02 orac1 CROND[1604]: (oracle) CMD (/home/oracle/clearLOG.sh)


发现脚本在指定时间运行了,但为什么没有清除归档?百度一下,发现有两种解决方案

1、使用su - oracle -c

2、添加oracle 环境变量


六、添加oracle 环境变量

切换至oracle 用户

more .bash_profile

将oracle 相关的环境变量粘贴至clearLog.sh文件中

export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/db
export ORACLE_SID=orcl1
export ORACLE_UNQNAME=orcl
export ORACLE_TERM=xterm
export NLS_DATE_FORMAT="yyyy-mm-dd hh24:mi:ss"
export NLS_LANG="AMERICAN_AMERICA.AL32UTF8"
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/oui/bin:/usr/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/sdbms/jlib
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

${ORACLE_HOME}/bin/rman nocatalog log=/home/oracle/del_arch$(date +%Y-%m-%d).log
  <<EOF
connect target /
#crosscheck archivelog all;
#delete noprompt expired archivelog all;
DELETE noprompt ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-11';
exit;
EOF


七、再次测试与验证

[oracle@orac1 ~]$ ls
backup       clearLOG.sh_bak  core.14518  del_arch2014-07-04.log
clearLOG.sh  core.14076       core.14561
[oracle@orac1 ~]$ wc -l del_arch2014-07-04.log 
79 del_arch2014-07-04.log
[oracle@orac1 ~]$ more del_arch2014-07-04.log 

Recovery Manager: Release 11.2.0.3.0 - Production on Fri Jul 4 20:31:04 2014

Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

RMAN> 
connected to target database: ORCL (DBID=1367727099)
using target database control file instead of recovery catalog

RMAN> 2> 3> 
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=174 instance=orcl1 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=190 instance=orcl1 device type=DISK
allocated channel: ORA_DISK_3
channel ORA_DISK_3: SID=217 instance=orcl1 device type=DISK
allocated channel: ORA_DISK_4
channel ORA_DISK_4: SID=113 instance=orcl1 device type=DISK
List of Archived Log Copies for database with db_unique_name ORCL
=====================================================================

Key     Thrd Seq     S Low Time           
------- ---- ------- - -------------------
68984   1    39462   A 2014-06-23 18:07:21
        Name: +ARV1/orcl/archivelog/2014_06_23/thread_1_seq_39462.2542.851021325

68988   1    39463   A 2014-06-23 18:48:44
        Name: +ARV1/orcl/archivelog/2014_06_23/thread_1_seq_39463.2548.851023995

68992   1    39464   A 2014-06-23 19:33:15
        Name: +ARV1/orcl/archivelog/2014_06_23/thread_1_seq_39464.2555.851027033

68983   2    29516   A 2014-06-23 18:37:56
        Name: +ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29516.2545.851021323

68985   2    29517   A 2014-06-23 18:48:42
        Name: +ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29517.2543.851022017

68986   2    29518   A 2014-06-23 19:00:15
        Name: +ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29518.2546.851022997

68987   2    29519   A 2014-06-23 19:16:37
        Name: +ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29519.2550.851023995

68989   2    29520   A 2014-06-23 19:33:14
        Name: +ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29520.2549.851025009

68990   2    29521   A 2014-06-23 19:50:08
        Name: +ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29521.2552.851025979

68991   2    29522   A 2014-06-23 20:06:18
        Name: +ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29522.2558.851027033

deleted archived log
archived log file name=+ARV1/orcl/archivelog/2014_06_23/thread_1_seq_39462.2542.851021325 RECID=68984 STAMP=851021324
deleted archived log
archived log file name=+ARV1/orcl/archivelog/2014_06_23/thread_1_seq_39463.2548.851023995 RECID=68988 STAMP=851023995
deleted archived log
archived log file name=+ARV1/orcl/archivelog/2014_06_23/thread_1_seq_39464.2555.851027033 RECID=68992 STAMP=851027033
deleted archived log
archived log file name=+ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29516.2545.851021323 RECID=68983 STAMP=851021322
deleted archived log
archived log file name=+ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29517.2543.851022017 RECID=68985 STAMP=851022017
deleted archived log
archived log file name=+ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29518.2546.851022997 RECID=68986 STAMP=851022998
deleted archived log
archived log file name=+ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29519.2550.851023995 RECID=68987 STAMP=851023995
deleted archived log
archived log file name=+ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29520.2549.851025009 RECID=68989 STAMP=851025010
deleted archived log
archived log file name=+ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29521.2552.851025979 RECID=68990 STAMP=851025980
deleted archived log
archived log file name=+ARV1/orcl/archivelog/2014_06_23/thread_2_seq_29522.2558.851027033 RECID=68991 STAMP=851027032
Deleted 10 objects


RMAN> 

Recovery Manager complete.

ok 祝你好运。

《Oracle系列》Oracle归档日志管理(开启归档日志、删除归档日志) 开启归档日志、正确删除归档日志、定时删除归档日志 阅读详情

相关推荐

Oracle归档日志管理与RMAN清理实战:从原理到自动化运维

在数据库管理中,备份与恢复是保障数据安全的核心机制。其原理在于通过记录数据变更日志,确保在系统故障时能恢复到特定时间点。归档日志作为重做日志的持久化副本,是实现时间点恢复(PITR)和高可用架构(如Data Guard)的技术基础,对保障业务连续性与数据完整性具有关键价值。在实际生产环境中,尤其在Oracle等大型数据库系统中,归档日志会持续增长,若管理不当将迅速耗尽磁盘空间,导致数据库挂起,直接影响业务运行。因此,制定科学的清理策略并借助RMAN等工具实现自动化运维,成为DBA必须掌握的工程实践。本文聚焦

weixin_33462167的博客 320

Oracle——清理归档日志

Oracle,数据库,归档模式,运维

qtishero的博客 9213

【Oracle】Oracle清理归档日志

【代码】Oracle清理归档日志。

tttzzzqqq2018的博客 909

oracle清理归档日志

通过设置RETENTION POLICY,可以让Oracle自动管理归档日志的生命周期。确保在实施任何清理策略之前,已经理解了这些操作对于数据库的影响,并且已经有了适当的备份。你可以创建一个定期执行的脚本(例如,使用cron job),以自动清理旧的归档日志。你可以直接登录到Oracle数据库服务器,然后删除不再需要的归档日志文件。RMAN是Oracle提供的一个备份和恢复工具,它也可以用来删除归档日志。

xiaoyang1982的专栏 4130

Oracle ORA-00257 归档日志撑爆恢复区:排查、应急清理与RMAN自动策略

归档日志是Oracle数据库实现时间点恢复与Data Guard同步的核心机制,其写入依赖快速恢复区(FRA)的配额管理。当归档生成速率超过FRA回收能力时,ARCH进程写入失败,数据库触发ORA-00257保护性断连,仅允许SYSDBA接入。该问题的技术价值在于保障业务连续性与恢复窗口完整性,常见于归档模式与RMAN备份策略不匹配的生产库。典型场景包括FRA空间耗尽、归档目录权限异常、备库目的地写满等。通过v$archived_log与v$recovery_file_dest定位堆积量,结合RMAN的DE

weixin_30219613的博客 325

图像去雾新思路:手把手教你复现DEA-Net中的“细节增强卷积”与PyTorch实现

本文详细解析了DEA-Net中的'细节增强卷积'(DEConv)与PyTorch实现,通过多分支差分卷积和重参数化技术,显著提升单图像去雾效果。文章从数学原理到代码实现,手把手指导复现这一创新架构,帮助开发者在保持轻量化的同时实现41dB以上的PSNR指标,适用于自动驾驶、遥感监测等关键领域。

weixin_30323631的博客 505

Oracle数据库清理日志的方法

Oracle数据库中的归档日志清理方法有2种,一是手动清理,二是设置自动清理。

Small_Casee的博客 1万+

2022-2028年中国美容仪行业发展战略规划及投资机会预测报告

报告类型:产业研究 报告格式:电子版、纸介版 出品单位:智研咨询-产业信息网 美容仪是一种根据人体生理机能进行调节改善身体和面部的机器,它按照功能来说有美白、嫩肤、祛斑、祛皱、脱毛、减肥等多种,按照名称来说有超声波导入、光子嫩肤、高周波电疗、RF 电波拉皮、电子祛斑点痣、E 光永久脱毛嫩肤、贾法尼营养导入导出等。 智研咨询发布的《2022-2028年中国美容仪行业发展战略规划及投资机会预测报告》共十七章。首先介绍了中国美容仪行业市场发展环境、美容仪整体运行态势等,接着分析了中...

kt346的博客 468

oracle自动清理归档,Oracle rman 自动清理归档日志

一、背景:数据库开启归档日志,若不及时清理归档日志,系统就会报ORA-00257: archiver error. Connect internal only, until freed有没有自动清理归档脚本,不需要每次都手动清理呢?当然有,实现自动清理归档日志,可以通过 Linux crontab,Oracle rman。二、编写删除rman脚本新建一个脚本clearLog.sh${ORACLE_...

weixin_35843096的博客 2225

OCTA-500:用于光学相干断层扫描血管造影研究的视网膜数据集|文献速递-基于生成模型的数据增强与疾病监测应用

数据集提供了丰富的图像和注释,包括两种模态(OCT/OCTA体积)、六种投影类型、四种文本标签(年龄/性别/眼别/疾病)以及七种分割标签(大血管/毛细血管/动脉/静脉/2D FAZ/3D FAZ/视网膜层)。我们介绍了新的 OCTA-500 数据集,该数据集包含来自 500 名受试者的 OCTA 成像,并提供了丰富的图像和标注集。(C) OCTA-500 切片的人工标注示例。图 4. OCTA-500 数据集中文本标签的统计直方图:(a) 性别,(b) 眼别,(c) 年龄,(d) 疾病。

weixin_38594676的博客 1434

分享一些基于微信小程序开发的小游戏源码

小游戏小程序是运行在微信生态系统(或其他支持小程序的平台)中的轻量级应用程序,专为休闲游戏体验而设计的小程序子类别,小游戏小程序通常体积较小,加载速度快,用户无需等待长时间即可开始游戏。用户无需下载或安装单独的游戏应用程序,即可通过小程序入口直接进入游戏,同时小游戏小程序通常包含排行榜、分享功能等社交元素,可以增强游戏体验并促进用户参与。game.js:游戏页面的逻辑文件,包含页面数据、生命周期函数、事件处理函数等。game.wxml:游戏页面的结构文件,定义了页面的布局和组件。

xinshangdian的博客 6222

oracle归档未自动清理,Oracle rman 自动清理归档日志

一、背景:数据库开户归档日志,若不及时清理归档日志,系统就会报ORA-00257: archiver error. Connect internal only, until freed有没有自动清理归档脚本,不需要每次都手动清理呢?当然有,实现自动清理归档日志,可以通过 Linux crontab,Oracle rman。二、编写删除rman脚本新建一个脚本clearLog.sh${ORACLE_...

weixin_42651887的博客 577

对冲策略与马丁结合ea的编程实践(五)核心是把两个品种合成一个新品种

在外汇、数字货币、期货交易甚至赌博中,马丁策略、网格策略是最常用的策略,也是最容易被理解的策略,但是如何克服单边行情、极端行情,是使用马丁策略最为头疼的事情,如加大间距、加大资金量,只能缓解,并不能根本解决这样的情况,所以使用时大部分时候都心里没底。 有没有一种正确的思路,让行情控制在震荡范围以内呢,这是今天我要向大家分享的一个思路,那就是对冲。大家看下图: 大家可以看到欧美(EURUSD)和镑美(GBPUSD),这两个品种,大部分时候走势是一致的,那么我们有没有可能把他们两个品种进行一下合成,比如买0.

omidsky的博客 3738

Oracle ASM归档日志自动清理:RMAN+crontab一键闭环(生产可用)

Oracle 归档日志自动清理实战:RMAN + crontab 固化 14 天保留,彻底告别 ASM 爆盘救火

「YYL DBA手记」 数据库 · 架构 · 运维 · 实战 yyldba.blog.youkuaiyun.com 535

API安全攻防实战:从信息搜集到漏洞利用的完整路径

本文详细解析了API安全攻防实战的全过程,从信息搜集到漏洞利用,涵盖了渗透测试的核心技巧和工具使用。通过真实案例展示如何发现和利用API漏洞,如HTTP方法滥用、内容类型转换攻击等,并提供企业级防御策略和测试心得,帮助安全研究人员提升API安全防护能力。

weixin_30394981的博客 434

ScanNetV2 数据集讲解和选择性下载

写在前面的话: 不可转载!!!!!!!!!!!! ScanNetV2一共1.2T,数据太大本文会简单讲解如何下载自己想要的文件,并附上修改后的下载程序 ScanNetV2:http://www.scan-net.org/ 简介 ScanNetV2的作者是斯坦福大学的博士,其团队通过收集RGB-D的视频序列,通过ipad应用加深传感器而收集的,然后视频会被上传到服务器,并被自动重建。然后,视频会被给到亚马逊 Mechanical Turk,将标注工作众包出去。ScanNetV2是RGB-D数据集,.

qq_35781447的博客 2万+

ORACLE 定时清理归档日志详细过程

ORACLE 定时清理归档日志详细过程

hfdgjjg的博客 5488

【深度学习新浪潮】Qwen门控注意力斩获NeurIPS 2025最佳论文!技术解析与代码实现

Qwen团队的门控注意力机制获得NeurIPS 2025最佳论文,不仅是中国AI研究的重大突破,更是大模型架构创新的重要里程碑。这项研究证明,通过巧妙的架构设计,可以在不显著增加计算成本的前提下,大幅提升模型性能。正如论文所展示的,用一个极其简单的改动,同时解决了Transformer架构中的多个核心问题,这正是优秀研究的价值所在。该技术已成功应用于Qwen3大模型,为通义千问系列产品的性能提升提供了坚实的技术支撑。轻量化大模型设计多模态统一架构专用领域大模型优化边缘计算场景部署。

专注:太空算力、AI infra、异构调度、大模型成本工程 569

Oracle 简单清理归档日志文件

查看归档 SQL> archive log list; 数据库日志模式 存档模式 自动存档 启用 存档终点 USE_DB_RECOVERY_FILE_DEST 最早的联机日志序列 2536 下一个存档日志序列 2538 当前日志序列 2538 先查看一下存储的位置 SQL> show paramet

jiayue's BLOG 1万+

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

利用脚本自动清理Oracle归档日志

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.youkuaiyun.com/jaune161/article/details/50453868 背景 由于Oracle数据库开启了归档模式,经常因为归档日志文件占用空间过大而导致数据库无法正常连接,发现...

chongmiandun5173的博客 182

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

自动清理Oracle的Archivelog

思路: 使用rman清理Archivelog 注意使用 <<EOF......EOF将输出重定向 脚本: export ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1 export ORACLE_SID=MYDB01 echo "------ start" $(date "+%Y-%m-%d %H:%M:%S") "----------------------" /u01/app/oracle/product/11.2.0/db_1/bin

凯神做开发 981

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Oracle数据库RMAN清理归档日志笔记

是重要的一步,它将RMAN资料库中记录的归档日志信息与实际物理文件进行比对,标记出那些记录中存在但物理上已经不存在的归档日志为"EXPIRED"状态。(RMAN)工具可以安全、有效地完成这项任务,因为它不仅删除物理文件,还会同步更新控制文件中的相关信息,避免因记录不一致导致的问题。执行后,RMAN会报告每个归档日志文件的验证结果,状态可能是"AVAILABLE"(可用)或"EXPIRED"(已过期)。对于生产环境,配置自动化的归档日志清理任务是必要的,可以防止因疏忽导致的存储空间问题。

m0_37873601的博客 1261

Oracle RAC环境下自动清理归档日志实战指南

Q:如何验证归档日志确实被删除?sqlQ:遇到ORA-19511错误如何处理?bash# 检查文件系统权限# 检查ASM文件状态Q:能否使用第三方工具?推荐组合:RMAN + OEM(Oracle Enterprise Manager) + 自定义监控脚本。

pang12234的专栏 1311

菜鸟式清理Oracle归档日志

#!/bin/bash # -*- coding: UTF-8 -*- # Filename: delete_archivelog.sh # Description: Oracle归档日志清理脚本 # Author: SERE echo -e "\033[32mTime:$(date +%F" "%T)\033[0m" source ~/.bash_profile LOG_DIR=$ORACLE_BASE/flash_recovery_area/ORCL/archivelog/ DELETE_DATE=`

SERE0211的博客 1158
上一篇: websphere 发布配置
下一篇: java 生成验证码
javaee_ssh
博客等级 码龄18年 42粉丝 42原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值