Innehållsförteckning:
- Så här konfigurerar och aktiverar du Flashback-databasen
- Så här rullar du tillbaka din Oracle 12c-databas
Video: Mantrans betydelse och hur du kan använda dom 2024
Du kan hävda att det går att flytta databasen fram och tillbaka med Oracle 12c Recovery Manager med bra säkerhetskopieringar. Att återställa en stor databas till en tidigare punkt är dock tidskrävande och tråkig. Om du inte går tillbaka tillräckligt långt måste du börja om från början.
Du kanske vill bläddra i databasen av följande skäl:
-
Upprepade testscenarier: Säg att du har en applikation som du testar i din utvecklingsmiljö. Varje gång du kör programmet ändras dina data. Du vill återställa data till dess ursprungliga värden innan nästa test. Flashback är ett utmärkt verktyg för detta.
-
Logisk datakorruption: Kanske har någon av misstag sprang det felaktiga programmet i din produktionsmiljö. Du måste återgå till en punkt innan felet inträffade. Du kan göra det med en dataåterställning, men Flashback är snabbare och enklare.
-
Distributionsprocedurer: Kanske släpper du en ny version av din kod som uppdaterar alla sorters objekt i ditt produktionsschema med både DDL och DML. Du kan enkelt rulla tillbaka om programmet inte fungerar korrekt i målprestanda parametrar.
Flashback Database fungerar genom att spela in extra information som gör att du kan rulla tillbaka transaktioner utan att göra en fullständig databasåterställning. Inte bara det, men det fungerar väldigt snabbt. Flashback-databasen har bland annat följande snabbfunktioner:
-
Du kan öppna databasen i läsläge för att se om du gick tillbaka tillräckligt långt.
-
Inte tillräckligt långt? Snabbt rulla tillbaka längre.
-
För långt? Rull framåt igen.
Du kan utföra alla dessa uppgifter med enkla kommandon i SQL * Plus eller Oracle Enterprise Manager. För att göra dem med RMAN pratar du flera fullständiga återställningar och mycket tid däremellan.
Så här konfigurerar och aktiverar du Flashback-databasen
Flashback-databasen fungerar annorlunda än Flashback-funktionerna. Med Flashback-databasen lagrar Oracle en fil som heter en flashback-logg. Flashback-loggar har data för att rulla tillbaka block till en tidigare gång. Flashback-loggar lagras i flash_recovery_area.
Två variabler kommer till spel här:
-
Hur långt tillbaka vill du åka?
-
Hur mycket data ändras i din databas inom den här tidsperioden?
Ju längre du går tillbaka och ju fler förändringar du har desto mer flashback-loggar genererar du. Se till att du har tillräckligt med utrymme för att lagra de loggarna, eller du blinkar inte någonstans.
Om du funderar på att implementera Flashback Database måste du kanske förstora parametern db_recovery_file_dest_size.Hur mycket du förstorar det beror på de två variablerna: hur långt tillbaka och hur mycket data? Om du vill ha en bra utgångspunkt, använd följande formel:
Ny Flash Recovery Area Size = Aktuellt Flash Recovery Area Size + Total databasstorlek × 0. 3
I huvudsak försöker du reservera ungefär 30 procent av Din totala databasstorlek i Flash Recovery Area för flashback-loggar.
Från och med då kan du övervaka hur mycket utrymme flashback-loggarna förbrukar.
När du har konfigurerat Flash Recovery Area, slår du på Flashback-funktionen i databasen genom att följa dessa steg:
-
Tänk på hur långt tillbaka du vill kunna blinka tillbaka.
Standardvärdet är 24 timmar (eller 1, 440 minuter). Säg att du vill kunna blinka upp till 48 timmar.
-
Konfigurera hur långt tillbaka du vill gå med parametern db_flashback_retention_target; för att göra det, logga in på SQL som SYSDBA och skriv
I det här exemplet ställs tiden in för 2, 880 minuter (48 timmar).
Du bör se följande under vilken tid du väljer.
Systemändrat.
-
Stäng av din databas och starta om den i monteringsläget.
-
Sätt i databasen i flashback-läge genom att skriva följande:
Du bör se detta:
Databasen ändrad.
-
Öppna databasen genom att skriva följande:
Du bör se detta:
Databasen ändrad.
Nu när databasen är i flashback-läge kan du bläddra tillbaka när som helst i ditt Flashback-fönster.
Så här rullar du tillbaka din Oracle 12c-databas
När databasen måste blinkas tillbaka, oroa dig inte. Processen är relativt lätt.
Blinkar tillbaka En databas tar bort eventuella ändringar som inträffade efter den tidpunkt som valts för att återvända. Ta inte denna hänsyn lätt.
För att se hur långt tillbaka du kan gå, skriv det här:
Du borde se något så här:
OLDEST_FLASHBACK_TIM -------------------- 14 -AUG-2013 06: 34: 03
db_flashback_retention_target ska vara ungefär gränsen för den tidsramen. Du kan tycka att det är längre om rummet inte är ett problem och databasen har ännu inte rensat gamla flashback-loggar.
Säg att en användare av misstag släppte HR-schemat från din databas ungefär en timme sedan.
-
Stäng ner din databas.
-
Starta om det i monteringsläget.
-
Skriv följande, där 1 är det antal timmar som du vill blinka tillbaka:
Du bör se detta:
Flashback complete.
-
Kontrollera flashbacken innan du gör den permanent:
Du bör se detta:
Databasen ändrad.
-
Om du är nöjd med resultatet, gå till steg 6. Om du inte är nöjd med tiden, gå till steg 9.
-
Stäng av databasen.
-
Starta databasen i monteringsläget.
-
Öppna databasen med Resetlogs:
Du bör se detta:
Databasen ändrad.
-
Starta om databasen i monteringsläget.
-
Skriv följande:
Du borde se detta:
Media recovery complete.
-
Starta din databas i monteringsläget.
Om du vill blinka tillbaka till en tidstämpel, gå till steg 12. Om du vill blinka tillbaka till en tidigare skapad återställningspunkt, gå till steg 13.
Mer information om återställningspunkter finns i närliggande "Användning återställningspunkter "sidofält.
-
Skriv följande:
Du bör se detta:
Komplettera Flashback.
-
Skriv följande om du vill blinka tillbaka till en återställningspunkt:
Du bör se detta:
Komplettera Flashback.