Hot backup betyder, at systemet er oppe og køre, og opdateringer foregår som normalt
Jeg vil her forklare Mechanism Following af Oracle, når vi tager hot backup
Manuel Hotbackup
Manuel hotbackup starter med nedenstående kommando for et tablespace
ændre tablespace BRUGERE begynder at sikkerhedskopiere;
Der sker kun få ting på det tidspunkt
1)DBWn kontrollerer tablespacet (skriver alle beskidte blokke ud fra en given SCN)
2)CKPT stopper med at opdatere Checkpoint SCN-feltet i datafilens overskrifter og begynder i stedet at opdatere feltet Hot Backup Checkpoint SCN
Datafilheaderne, som indeholder SCN for det sidst afsluttede kontrolpunkt, opdateres ikke, mens en fil er i hot backup-tilstand . Dette gør det muligt for gendannelsesprocessen at forstå, hvilke arkiv-redo-logfiler der kan være nødvendige for fuldt ud at gendanne denne fil.
3)LGWR begynder at logge fulde billeder af ændrede blokke første gang en blok ændres efter at være skrevet af DBWn
Første gang en blok ændres i en datafil, der er i hot backup-tilstand, skrives hele blokken til gentag logfiler, ikke kun de ændrede bytes. Normalt skrives kun de ændrede bytes (en redovektor). I hot backup-tilstand logges hele blokken første gang. Dette skyldes, at du kan komme i en situation, hvor processen, der kopierer datafilen og DBWR, arbejder på den samme blok samtidigt.
Lad os sige, at de er det, og OS blokerende læsefaktor er 2K . Sikkerhedskopieringsprogrammet går til at læse en 8k Oracle-blok. OS giver det 4k. I mellemtiden - DBWR har bedt om at omskrive denne blok. OS planlægger, at DBWR-skrivningen skal ske lige nu. Hele 8k blokken er omskrevet. Sikkerhedskopieringsprogrammet starter igen (multi-tasking OS her) og læser de sidste 4k af blokken. Sikkerhedskopieringsprogrammet har nu fået en brækket blok — hovedet og halen er fra to tidspunkter.
Oracle kan ikke håndtere det under genopretning. Derfor logger vi hele blokbilledet, så denne blok under gendannelse bliver fuldstændig omskrevet fra redo og i det mindste er i overensstemmelse med sig selv. Vi kan gendanne det derfra.
Vigtigt punkt i Hot backup
1)For at begrænse effekten af denne ekstra logning, bør du sikre dig, at du kun placerer et tablepspace ad gangen i backup-tilstand og bringer tablespacet ud af backup-tilstand, så snart du har sikkerhedskopieret det. Dette vil reducere antallet af blokke, der muligvis skal logges, til det mindst mulige.
2) Hvis tablespacet er i hotbackup-tilstand, og databasen afbrydes. Og så prøver du at starte, den vil klage over gendannelse, da datafilen SCN for det tablespace vil være ældre, så for at starte databasen, skal vi først afslutte sikkerhedskopieringen af det tablespace. Den opdaterer blot checkpoint SCN med Hot Backup Checkpoint SCN
Recovery manager backup
Vi behøver ikke at sætte tablespacet i hotbackup-tilstand for at tage sikkerhedskopien ved hjælp af hotback-tilstanden
Da RMAN er Oracle-værktøjet, ved de, hvordan de skal håndtere brudblokken, så det skriver ikke blokfragmenter eller partielle blokeringer til sikkerhedskopien, skriver den det komplette konsistente blokbillede til backupmediet. Så gendannelsesadministratoren behøver ikke at registrere hele blokeringen til redo-logfilen. Så det betyder en enorm besparelse i gen-logning fra manuel hotbackup-sag
rman fryser heller ikke datafilens header, den fortsætter med at checkpoint lige så regelmæssigt, men den udfører et checkpoint til tablespacet.
RMAN-sikkerhedskopi noterer start-SCN,Absolute Fuzzy SCN(som er det samme som at starte SCN i begyndelsen), når sikkerhedskopieringen begynder, og da blokkene er backup i datafilen, tjekkes blokken for SCN, hvis den er højere end startende SCN, Absolute Fuzzy SCN er opdateret med det nummer. Det samme gælder for alle blokkene, når hele datafilen er backup, gemmes disse begge numre i backup-headeren.
Så hver gang RMAN gendannede disse sikkerhedskopier, ved de, at den ved, fra hvilken begyndelse SCN skal afsluttes, skal den med sikkerhed gendanne datafilen
Så dybest set er der ingen overhead som øget logning i RMAN hot backup.
Det samme gælder for billedsikkerhedskopiering med RMAN