Databasegendannelse er en DBMS - funktion , der i tilfælde af logiske og fysiske fejl bringer databasen til en opdateret og konsistent tilstand.
I tilfælde af en logisk fejl eller et tilbagerulningssignal for en transaktion scannes ændringsloggen baglæns, og alle registreringer af den tilbagerullede transaktion hentes fra loggen frem til starten af transaktionen. Ifølge de udtrukne oplysninger udføres handlinger, der annullerer transaktionens handlinger. Denne proces kaldes rollback.
I tilfælde af en fysisk fejl, hvis hverken ændringsloggen eller selve databasen er beskadiget, udføres rollforward-processen. Loggen scannes i fremadgående retning, startende fra det forrige kontrolpunkt. Alle poster hentes fra loggen op til slutningen af loggen. Information hentet fra loggen indtastes i eksterne hukommelsesdatablokke, der har et ændringsnummermærke, der er mindre end det, der er registreret i loggen. Hvis kørslen mislykkes igen, genstartes logscanningen fra begyndelsen, men gendannelsen fortsætter faktisk, hvor den slap.
I tilfælde af en fysisk fejl, hvis ændringsloggen er tilgængelig, men selve databasen er beskadiget, skal processen med at gendanne databasen fra en sikkerhedskopi udføres. Efter gendannelsen vil databasen være i tilstanden på tidspunktet for sikkerhedskopieringen. For at gendanne databasen til fejlpunktet, skal du køre gennem alle ændringerne ved hjælp af ændringsloggen .
I tilfælde af en fysisk fejl, hvis ændringsloggen ikke er tilgængelig, men selve databasen er intakt, er retablering kun mulig til det punkt, hvor det tidligere kontrolpunkt var gældende.
I tilfælde af en fysisk fejl, hvis både ændringsloggen og selve databasen er beskadiget, er gendannelse kun mulig på tidspunktet for sikkerhedskopieringen.