PROBLEM:
Archive logs are not getting deleted with RMAN command, and it is reporting below warnings.
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=/archive/arch/BBCRMDEV/1_1963_929123254.dbf thread=1 sequence=1963
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=/archive/arch/BBCRMDEV/1_1964_929123254.dbf thread=1 sequence=1964
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=/archive/arch/BBCRMDEV/1_1965_929123254.dbf thread=1 sequence=1965
CAUSE & SOLUTION:
Well, the error clearly says, either goldengate integrated captures or dataguard is used, which still need those archives.
However, We are not using any of these. It is just a standalone database, still getting the error. Then we recalled, that the database was cloned from a production database where goldengate integrated capture is used.
So to fix this, I have removed the capture processes.
SQL> select CAPTURE_NAME,QUEUE_OWNER,status from dba_capture;
CAPTURE_NAME QUEUE_OWNER STATUS
------------------ ------------------ --------
OGG$ABC_X01_OLAP GGATE ENABLED
--- If the status is enable, we have to disable it before dropping
SQL> exec DBMS_CAPTURE_ADM.DROP_CAPTURE('OGG$ABC_X01_OLAP');
BEGIN DBMS_CAPTURE_ADM.DROP_CAPTURE('OGG$ABC_X01_OLAP'); END;
*
ERROR at line 1:
ORA-01338: Other process is attached to LogMiner session
ORA-06512: at "SYS.DBMS_CAPTURE_ADM_INTERNAL", line 846
ORA-06512: at "SYS.DBMS_CAPTURE_ADM_INTERNAL", line 817
ORA-06512: at "SYS.DBMS_CAPTURE_ADM", line 302
ORA-06512: at line 1
SQL> exec DBMS_CAPTURE_ADM.STOP_CAPTURE('OGG$ABC_X01_OLAP');
PL/SQL procedure successfully completed.
SQL> select CAPTURE_NAME,QUEUE_OWNER,status from dba_capture;
CAPTURE_NAME QUEUE_OWNER STATUS
------------------ ------------------ --------
OGG$ABC_X01_OLAP GGATE DISABLED
SQL> exec DBMS_CAPTURE_ADM.STOP_CAPTURE('OGG$ABC_X01_OLAP');
PL/SQL procedure successfully completed.
SQL> select CAPTURE_NAME,QUEUE_OWNER,status from dba_capture;
CAPTURE_NAME QUEUE_OWNER STATUS
------------------ ------------------ --------
OGG$ABC_X01_OLAP GGATE DISABLED
SQL> exec DBMS_CAPTURE_ADM.DROP_CAPTURE('OGG$ABC_X01_OLAP');
PL/SQL procedure successfully completed.
SQL> select CAPTURE_NAME,QUEUE_OWNER,status from dba_capture;
no rows selected
Now I ran the rman delete command, and it deleted the archive logs successfully.
No comments:
Post a Comment