12c DataGuard 无法删除归档日志

一、环境描述

Oracle 12c 单实例DataGuard

Rhel 7.3

二、测试过程

主库操作

1.关闭DG,切换日志

SQL> alter system set log_archive_dest_state_2=defer;

System altered.

SQL> show parameter log_archive_dest_state_2

NAME                                 TYPE        VALUE

------------------------------------ ----------- ------------------------------

log_archive_dest_state_2             string      DEFER

log_archive_dest_state_20            string      enable

log_archive_dest_state_21            string      enable

log_archive_dest_state_22            string      enable

log_archive_dest_state_23            string      enable

log_archive_dest_state_24            string      enable

log_archive_dest_state_25            string      enable

log_archive_dest_state_26            string      enable

log_archive_dest_state_27            string      enable

log_archive_dest_state_28            string      enable

log_archive_dest_state_29            string      enable

SQL> alter system switch logfile;

System altered.

SQL> alter system switch logfile;

System altered.

SQL>

2.rman删除归档

RMAN> list archivelog all;

List of Archived Log Copies for database with db_unique_name ORCL

=====================================================================

Key     Thrd Seq     S Low Time

------- ---- ------- - --------------------

40      1    31      A 26-NOV-2017 19:15:13

Name: /oracle/arch/1_31_958415134.dbf

42      1    32      A 26-NOV-2017 19:22:34

Name: /oracle/arch/1_32_958415134.dbf

RMAN> delete noprompt archivelog all;

released channel: ORA_DISK_1

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=39 device type=DISK

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

archived log file name=/oracle/arch/1_32_958415134.dbf thread=1 sequence=32

List of Archived Log Copies for database with db_unique_name ORCL

=====================================================================

Key     Thrd Seq     S Low Time

------- ---- ------- - --------------------

40      1    31      A 26-NOV-2017 19:15:13

Name: /oracle/arch/1_31_958415134.dbf

deleted archived log

archived log file name=/oracle/arch/1_31_958415134.dbf RECID=40 STAMP=961096954

Deleted 1 objects

RMAN>

三、小结

当我们DG环境,人为或者异常情况导致DG异常,没有被应用的归档日志是不会被删除的。这里可能会出现一个问题就是

当我们的磁盘空间紧张,可能生成大量的日志占满磁盘,导致数据库无法写入的问题。需要我们有监控系统,发现DG异常及时处理

,千万不要等着影响业务才被动的去处理。

时间: 2024-07-29 02:14:51

12c DataGuard 无法删除归档日志的相关文章

dataguard主库删除归档日志后从库恢复的方法

------------------方法1在主库上使用备份的进行恢复丢失的归档日志-------------------------1.发现主库备份后删除了归档,但是这些归档从库还没应用,也没有传到从库从库应用的最新的归档日志为592SQL> connect / as sysdbaConnected.SQL> Select Max(t.SEQUENCE#) From V$archived_Log t; MAX(T.SEQUENCE#)---------------- 592 主库的归档日志SQ

delete archivelog all 无法彻底删除归档日志?

最近在因归档日志暴增,使用delete archivelog all貌似无法清除所有的归档日志,到底是什么原因呢? [python] view plain copy print? 1.演示环境 SQL> select * from v$version where rownum<2; BANNER ---------------------------------------------------------------- Oracle Database 10g Release 10.2.0.

db_recovery_file_dest_size 修改大一点及删除归档日志 |转|

今天给客户测 试问题,让客户把数据发过来了.解压缩后一看,他们还是用的oracle 815版本的(他们exp导出时,带了导出日志,从导出日志中看出来是oracle 815版本的),不过没有关系,低版本的exp是可以用高版本的imp导入到高版本数据库中的.一看是导入还很正常,导入到其中某个表的时候,突然就不动 了.一开始我还没有弄明白怎末回事.后来,无意中看到了 计算机管理--事件查看器中 ,有很多报错信息: Archive process error: ORA-16038: log 1 sequ

oracle 删除归档日志的正确方式

在使用plsql使用游标的%rowcount时,导致了一个死循环,手动终止后数据库无法连接,服务重启后依然不行.windows日志管理器报归档日志相关的错误,最终手动启动到mount状态,禁用归档日志后,数据库正常.由于是本机的实验数据库,所以希望把归档日志删掉: 以下摘自这里ORACLE正确删除归档并回收空间的方法 一个ORACLE归档日志经常满,表现为/oraarchive 这个文件空间占用100%大家一定抱怨ORACLE为何没有归档维护工具,很多人直接删除了事,错了,ORACLE有,而且很

RMAN删除归档日志不释放问题

今天同事问到一个问题,他那边的一套Oracle 11g数据库使用RMAN没办法删除旧的归档,导致磁盘使用率很高. [email protected]:[/opt/oracle/archive/db] ls -ltr |moretotal 3059881082 -rw-r-----   1 oracle     oinstall   725320704 May 20  2016 1_1_91233774.dbf -rw-rw----   1 oracle     oinstall   175693

通过RMAN删除归档日志不释放问题

我的生产环境中归档日志满了,通过如下脚本删除后,空间并没有释放,看有网友有相关的解决思路,可以跟大家一起分享一下: RMAN> crosscheck archivelog all; RMAN> delete expried archivelog all; 关于rm删除文件空间不释放的问题可以写成一个FAQ了 一般说来不会出现rm掉不释放空间的情况出现这样的情况一般是由于有进程在向文件中写数据或有进程正在访问文件而此时rm文件则会出现不释放空间的情况 理解这样的问题需要理解rm的操作内含一个文件

当ORACLE归档日志满后如何正确删除归档日志

当ORACLE 归档日志满了后,将无法正常登入ORACLE,需要删除一部分归档日志才能正常登入ORACLE. 一.首先删除归档日志物理文件,归档日志一般都是位于archive目录下,AIX系统下文件格式为“1_17884_667758186.dbf”,建议操作前先对数据库进行备份,删除时至少保留最近几天的日志用于数据库恢复. 二.把归档日志的物理文件删除后,我们就可以正常登入ORACLE了,但是还没完全把归档日志删除干净,ORACLE的controlfile中仍然记录着这些archivelog的

Linux下设置定时任务删除归档日志

1.编辑删除归档日志的脚本----/home/oracle/clearlog.sh #! /bin/bash source ~/profile_orcl#记录归档删除的日志exec >> /home/rman_log/log/del_arch`date +%F-%H`.log $ORACLE_HOME/bin/rman target / <<EOF#检查归档crosscheck archivelog all; #列出无效的归档日志list expired archivelog al

Oracle手动删除归档日志厚,出现ORA-19571错误

一.使用以下的命令清理了空间: 1.   cd /orabak 2.   find . -type f -mtime +30 -exec rm -rf {} \; 二.然后开始使用rman备份的脚本进行备份,备份到最后出现以下报错 ------------------------------------------------------------------------------------------- archive log filename=/oralog/1_20800_81255