Avamar: Oracle-sikkerhedskopiering mislykkes med "overskredet grænse på 0 korrupte blokke for fil"
Summary: Knowledge Base-artikel (KB), der giver en løsning på Oracle-sikkerhedskopieringsfejl på grund af beskadigede blokke.
Symptoms
Sikkerhedskopieringen vises som mislykket i aktivitetsvinduet, men tilgængelig til gendannelse i Avamar-administratorkonsollen eller i Avamar-brugergrænsefladen (AUI). Dette gælder især, hvis indstillingen "Sikkerhedskopier arkivlogfiler" er aktiveret i datasættet.
Oracle-sikkerhedskopiering mislykkes muligvis med fejlmeddelelser, der ligner følgende:
avoracle Error <7934>: Snapup of EBSP aborted due to rman terminated abnormally - check the logs
...
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of backup plus archivelog command at 11/19/2015 20:52:52
ORA-19566: exceeded limit of 0 corrupt blocks for file E:\ORACLE\EMC\DB\AVAMAR\DATABASE.DBF
Recovery Manager complete.
Cause
Den pågældende databasefil har korrupte datablokke.
Dette kan bekræftes ved at køre følgende kommando:
SQL> select * from v$database_block_corruption;
Resolution
Du skal udføre korrupt blokgendannelse ved hjælp af plugin'et Oracle Recovery Manager (RMAN) for at genoprette den beskadigede databasefil.
I henhold til brugervejledningen til DELL Avamar for Oracle skal du først konfigurere databasen til gendannelse af beskadigede blokke. Dette gøres ved at indstille initialiseringsparameteren DB_BLOCK_CHECKSUM til TYPISK for Oracle-databasen. Denne parameterindstilling gør det muligt for RMAN at registrere både fysisk og logisk beskadigelse.
Følg derefter instruktionerne i brugervejledningen til DELL Avamar til Oracle for at gendanne en database i den oprindelige klient. I feltet Gendannelsestype skal du vælge indstillingen "Korrupte blokke".
Hvis den korrupte blokgendannelse mislykkes, bruger du kommandoen SET MAXCORRUPT til at indstille det samlede antal beskadigelser, der er tilladt i en fil. Standarden er nul, hvilket betyder, at RMAN ikke tolererer korrupte blokke af nogen art.
Hvis grænsen for MAXCORRUPT overskrides, når RMAN støder på en beskadiget blokering under en sikkerhedskopiering, afslutter RMAN sikkerhedskopieringen. Ellers skriver RMAN den korrupte blok til sikkerhedskopien med en speciel overskrift, der angiver, at blokken er markeret korrupt.
Reference: https://docs.oracle.com/cd/B28359_01/backup.111/b28273/rcmsynta043.htm#RCMRF153 (Eksternt link)
Sikkerhedskopier, der bruger Avamar Administrator-konsollen, kan dog ikke drage fordel af denne løsning. Derfor skal du foretage kommandolinjesikkerhedskopieringer ved hjælp af RMAN-scripts (Oracle Recovery Manager). Følg afsnittet "Sikkerhedskopiering og gendannelse med Oracle RMAN" i Avamar Oracle-brugervejledningen som reference.
Hvis du vil løse problemer med beskadigede datablokke permanent (anbefales), skal du kontakte Oracle-support for yderligere fejlfinding.