Sometimes you may find the following error ora 19588 in RMAN when you have a try to backup archived logs
RMAN-00571:=================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===== RMAN-00571: =================================================== RMAN-03009: failure of backup command on m1t1 channel at 12/09/2018 16:23:17 ORA-19588: archived log RECID 3494735 STAMP 994425329 is no longer valid |
1、This is always not an error but a warning
ORACLE document describe as below
Both jobs were trying to backup and delete the SAME archivelog set, one of which failed eventually as the other job had already backed up and deleted the log.
The reason for this is archivelog which process is trying to take backup, is already been backed up by another process and file is deleted.
This error will also occur if both archivelog backup task and full database backup task are running at the same time.
So to avoid this situation we have two ways
1.1 If you want to run a manual backup, just check whether any other RMAN backup tasks are in execution phase. you can do this by ps -ef | grep rman
If any backup process is running, you will see a similar output as below
ps -ef | grep rman orauser 52560438 58393650 0 17:22:49 pts/3 0:00 grep rman orauser 37552954 59245452 0 17:20:17 - 0:00 -ksh -c oravl01/orauser/rmanscripts/crmdb2/arch.sh orauser 2492102 37552954 0 17:20:17 - 0:04 rman target catalog rman_crm2/Tsmbak_0922@rman cmdfile oravl01/orauser/rmanscripts/crmdb2/arch.rcv msglog oravl01/orauser/rmanscripts/crmdb2/log/arch_201812091720.log |
1.2 Don’t schedule archivelog backup task during full database backup(including archivelog). Always make sure you have only one RMAN backup in process.
2、Invalid records in the controlfile
ORACLE document describe as below
Invalid and/or deleted records in the controlfile. Records might be aged out of the controlfile during the backup.
To resolve this issue,you may run the below command to synchronize the controlfile with the current status of the backup-related information.
RMAN> crosscheck archivelog all; |
3、Incorrect syntax
ORACLE document describe as below
The backup command being used is correct by 'syntax', however incorrect by 'logic' because RMAN will try to backup some archivelogs (archivelogs which completed till 'sysdate-1') twice in the same command:
RMAN> backup archivelog all archivelog until time 'sysdate -1' delete input; |
This backup command is interpreted by RMAN like the following:
+ Take backup of 'all' archived logs and then delete them
and
+ Take backup of archivelogs completed till 'sysdate-1'
If we don't specify 'DELETE INPUT', the command will be succeeded, however, by doing so, we will unnecessarily backing up some of the archived logs (archivelogs which completed till 'sysdate-1') twice which doesn't seem to be the intention of above command.
Correct the RMAN backup command 'logically' by removing the repeated 'archivelog' keyword:
RMAN> backup archivelog until time 'sysdate -1' delete input; |
If we wish to take backup of all archivelogs, then:
RMAN> backup archivelog all delete input; |




