Oracle DG环境如何正确地删除Archivelog

2024-03-21 18:32

本文主要是介绍Oracle DG环境如何正确地删除Archivelog,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

清理归档日志最稳妥的原则:

主备库清理归档,都要配置。

RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY; 

主库采用备份归档并清理。 备库应该是直接清理!

Archivelog并不能直接得从OS层直接物理删除,因为archivelog的相关信息是记录在controlfile中的,当物理删除后不会改变controlfile的设置。并且在查询相关的动态视图(例如v$archived_log)时,该部分日志仍然标注为存在。也就是说Oracle并不认为这些日志被删除了,所以在删除archivelog的时候,需要我们在其他地方做一些设置。

一、使用RMAN清除物理删除后的记录

可以使用RMAN来删除archivelog,具体可以按以下步骤操作:

1、物理删除archivelog 2、进入RMAN 3、crosscheck archivelog all; 4、delete expried archivelog all;

这样就在一些Oracle的记录中查不到相应的archivelog记录了。

二、直接使用RMAN删除archivelog

其实在RMAN中是可以使用命令直接将ARCHIVELOG删除的,命令如下:

RMAN> DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';

表示删除7天以前的所有archivelog,但是这个命令的缺点是无法对archivelog进行细致的划分。

三、使用RMAN备份achivelog后删除

这是一种最为稳妥的方法了,使用RMAN备份archivelog,备份后全部删除

backup format '/u01/arch_%T_%s_%U' archivelog all delete input; 或者 
backup database plus archivelog;

注:我在库上设置了Streams后,使用RMAN删除archivelog会导致报错RMAN-08137: WARNING:

archive log not deleted as it is still needed. 不知道该如何解决,据说是10.2的一个bug,如果真

是bug的话,那只能在OS层设置删除,或用RMAN进行强制删除了。

 

10g之后的版本,Oracle在RMAN中内置增加了一项归档文件的删除策略,终于,DBA可以仅通过一项配置就

解决该问题了。该策略对应两个值:

APPLIED ON STANDBY:设置为该值时,当通过附加的DELETE INPUT子句删除Standby数据库仍需要的日志

时,会提示RMAN-08137错误。不过用户仍然可以手动地通过DELETE ARCHIVELOG方式删除。

NONE:设置为该值时,则不启用归档文件的删除策略。默认情况下就是NONE。

例如,启用APPLIED ON STANDBY: RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY; new RMAN configuration parameters: CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY; new RMAN configuration parameters are successfully stored

RMAN> run { backup archivelog all delete input format 'ZHSVR044_%d_set=%s_piece=%p_date=%T.ARC.rmn'; }
坚持住你的坚持,成功就在拐弯处

这篇关于Oracle DG环境如何正确地删除Archivelog的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/833528

相关文章

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

全面解析Golang 中的 Gorilla CORS 中间件正确用法

《全面解析Golang中的GorillaCORS中间件正确用法》Golang中使用gorilla/mux路由器配合rs/cors中间件库可以优雅地解决这个问题,然而,很多人刚开始使用时会遇到配... 目录如何让 golang 中的 Gorilla CORS 中间件正确工作一、基础依赖二、错误用法(很多人一开

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本

MySQL逻辑删除与唯一索引冲突解决方案

《MySQL逻辑删除与唯一索引冲突解决方案》本文探讨MySQL逻辑删除与唯一索引冲突问题,提出四种解决方案:复合索引+时间戳、修改唯一字段、历史表、业务层校验,推荐方案1和方案3,适用于不同场景,感兴... 目录问题背景问题复现解决方案解决方案1.复合唯一索引 + 时间戳删除字段解决方案2:删除后修改唯一字

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

使用Python删除Excel中的行列和单元格示例详解

《使用Python删除Excel中的行列和单元格示例详解》在处理Excel数据时,删除不需要的行、列或单元格是一项常见且必要的操作,本文将使用Python脚本实现对Excel表格的高效自动化处理,感兴... 目录开发环境准备使用 python 删除 Excphpel 表格中的行删除特定行删除空白行删除含指定

Linux下删除乱码文件和目录的实现方式

《Linux下删除乱码文件和目录的实现方式》:本文主要介绍Linux下删除乱码文件和目录的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下删除乱码文件和目录方法1方法2总结Linux下删除乱码文件和目录方法1使用ls -i命令找到文件或目录

Mysql实现范围分区表(新增、删除、重组、查看)

《Mysql实现范围分区表(新增、删除、重组、查看)》MySQL分区表的四种类型(范围、哈希、列表、键值),主要介绍了范围分区的创建、查询、添加、删除及重组织操作,具有一定的参考价值,感兴趣的可以了解... 目录一、mysql分区表分类二、范围分区(Range Partitioning1、新建分区表:2、分