Recently I met with an Oracle error "RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process" while deleting the archived logs through RMAN prompt.
I simulated the same on my test machine.
Note. I had configured standby for my primary database but not the upstream.
Followings are the excerpts from the RMAN output.
RMAN> delete noprompt archivelog all;
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=24 device type=DISK
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=/u01/app/oracle/admin/db1/arch/1_146_812203684.dbf thread=1 sequence=146
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=/u01/app/oracle/admin/db1/arch/1_147_812203684.dbf thread=1 sequence=147
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=/u01/app/oracle/admin/db1/arch/1_148_812203684.dbf thread=1 sequence=148
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=/u01/app/oracle/admin/db1/arch/1_149_812203684.dbf thread=1 sequence=149
I simulated the same on my test machine.
Note. I had configured standby for my primary database but not the upstream.
Followings are the excerpts from the RMAN output.
RMAN> delete noprompt archivelog all;
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=24 device type=DISK
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=/u01/app/oracle/admin/db1/arch/1_146_812203684.dbf thread=1 sequence=146
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=/u01/app/oracle/admin/db1/arch/1_147_812203684.dbf thread=1 sequence=147
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=/u01/app/oracle/admin/db1/arch/1_148_812203684.dbf thread=1 sequence=148
RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process
archived log file name=/u01/app/oracle/admin/db1/arch/1_149_812203684.dbf thread=1 sequence=149
I could delete those archivelogs using "force" option as well.
RMAN > delete noprompt force archivelog all;
But I dont want to do the same as those archivelogs have not shipped yet to the standby server.
So I changed the rman configuration to do the same.
RMAN> show all;
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO SHIPPED TO STANDBY;
new RMAN configuration parameters:
CONFIGURE ARCHIVELOG DELETION POLICY TO SHIPPED TO STANDBY;
new RMAN configuration parameters are successfully stored
RMAN-08591: WARNING: invalid archived log deletion policy
RMAN> show all;
CONFIGURE ARCHIVELOG DELETION POLICY TO SHIPPED TO STANDBY;
Now I was able to delete those archivelogs.
RMAN> delete noprompt archivelog all;
released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=147 device type=DISK
List of Archived Log Copies for database with db_unique_name DB1
=====================================================================
Key Thrd Seq S Low Time
------- ---- ------- - ---------
239 1 146 A 24-MAY-13
Name: /u01/app/oracle/admin/db1/arch/1_146_812203684.dbf
247 1 147 A 24-MAY-13
Name: /u01/app/oracle/admin/db1/arch/1_147_812203684.dbf
249 1 148 A 24-MAY-13
Name: /u01/app/oracle/admin/db1/arch/1_148_812203684.dbf
250 1 149 A 24-MAY-13
Name: /u01/app/oracle/admin/db1/arch/1_149_812203684.dbf
..........
..........
deleted archived log
archived log file name=/u01/app/oracle/admin/db1/arch/1_146_812203684.dbf RECID=239 STAMP=816273514
deleted archived log
.........
.........
RMAN> crosscheck archivelog all;
released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=147 device type=DISK
specification does not match any archived log in the repository
Once I deleted those logs, I changed the rman configuration by the default one.
RMAN> CONFIGURE ARCHIVELOG DELETION POLICY CLEAR;
old RMAN configuration parameters:
CONFIGURE ARCHIVELOG DELETION POLICY TO SHIPPED TO STANDBY;
RMAN configuration parameters are successfully reset to default value
Thanks!!!
Good to know. Thanks :-)
ReplyDeleteSuch a nice post... Very Help full
ReplyDeletethanks Manish.
ReplyDeleteVery good explanation along with very good example
ReplyDeleteThank You, It was helpful to me....
ReplyDeleteThank You
ReplyDeleteIt was helpful for me.....