Zu den Datenbankwiederherstellungstechnologien gehören: 1. Datendump, ein Prozess, bei dem der DBA regelmäßig die gesamte Datenbank auf ein Band oder eine andere Festplatte kopiert und speichert. 2. Registrieren Sie die Protokolldatei. Die Protokolldatei wird zum Aufzeichnen der Aktualisierungsvorgänge der Transaktion in der Datenbank verwendet. Durch das Einrichten der Protokolldatei können Wiederherstellungen nach Transaktionsfehlern und Systemfehlern durchgeführt und Sicherungskopien bei der Wiederherstellung nach Medienfehlern unterstützt werden.
Die Betriebsumgebung dieses Tutorials: Windows7-System, MySQL8-Version, Dell G3-Computer.
Das Datenbankverwaltungssystem muss über die Funktion verfügen, die Datenbank von einem Fehlerzustand in einen bekanntermaßen korrekten Zustand wiederherzustellen. Dies ist eine Datenbankwiederherstellung. Das Wiederherstellungssubsystem ist ein wichtiger Teil des Datenbankverwaltungssystems und ziemlich groß und macht oft mehr als zehn Prozent des gesamten Systemcodes aus. Ob die im Datenbanksystem verwendete Wiederherstellungstechnologie effektiv ist, spielt nicht nur eine entscheidende Rolle für die Zuverlässigkeit des Systems, sondern hat auch einen großen Einfluss auf die Betriebseffizienz des Systems. Es ist ein wichtiger Indikator zur Messung der Systemleistung .
Ein Systemfehler wird als Soft Failure bezeichnet, ein Medienfehler als Hard Failure. Unter harten Fehlern versteht man externe Speicherfehler, wie z. B. Festplattenschäden, Kopfkollision, plötzliche starke Magnetfeldinterferenz usw. Diese Art von Fehler zerstört die Datenbank oder einen Teil der Datenbank und wirkt sich auf alle Transaktionen aus, die auf diesen Teil der Daten zugreifen.
Fasst man verschiedene Arten von Fehlern zusammen, gibt es zwei Möglichkeiten für die Auswirkungen auf die Datenbank. Einer davon ist, dass die Datenbank selbst beschädigt ist. Zweitens ist die Datenbank nicht beschädigt, die Daten sind jedoch möglicherweise falsch. Dies liegt an der abnormalen Beendigung der Transaktion.
Der Recovery-Mechanismus umfasst zwei Schlüsselthemen:
1. Wie man redundante Daten herstellt;
2.
Die gängigsten Techniken zur Erstellung redundanter Daten sind Datendumps und Protokolldateien. Normalerweise werden diese beiden Methoden in einem Datenbanksystem zusammen verwendet.
Datendump
Datendump ist die grundlegende Technik, die bei der Datenbankwiederherstellung verwendet wird. Beim sogenannten Dump handelt es sich um den Vorgang, bei dem der DBA regelmäßig die gesamte Datenbank auf ein Band oder eine andere Festplatte kopiert und speichert. Diese Ersatzdaten werden zu Standby-Kopien oder Sicherungskopien.
Dumps können in statische Dumps und dynamische Dumps unterteilt werden.
Statischer Dump ist ein Dump-Vorgang, der ausgeführt wird, wenn keine laufenden Transaktionen im System vorhanden sind. Das heißt, wenn der Dump-Vorgang startet, befindet sich die Datenbank in einem konsistenten Zustand und während des Dumps sind keine Zugriffs- oder Änderungsaktivitäten auf die Datenbank zulässig. Offensichtlich muss der statische Speicherauszug eine konsistente Kopie der Daten erhalten.
Dynamischer Dump bedeutet, dass während des Dumps auf die Datenbank zugegriffen oder diese geändert werden darf. Es kann jedoch nicht garantiert werden, dass die Daten auf der Sicherungskopie am Ende des Dumps korrekt und gültig sind. Zu diesem Zweck ist es notwendig, die Änderungsaktivitäten jeder Transaktion während des Dump-Zeitraums in der Datenbank zu registrieren und eine Protokolldatei zu erstellen. Auf diese Weise kann die Sicherungskopie zusammen mit der Protokolldatei die Datenbank zu einem bestimmten Zeitpunkt in den korrekten Zustand zurückversetzen Moment.
Dumps können in zwei Methoden unterteilt werden: Massendump und inkrementeller Dump. Beim Massendump wird jedes Mal die gesamte Datenbank gelöscht. Unter inkrementellem Dump versteht man das Dumping nur der Daten, die seit dem vorherigen Dump aktualisiert wurden. Aus Sicht der Wiederherstellung ist es im Allgemeinen bequemer, für die Wiederherstellung Sicherungskopien zu verwenden, die aus Massendumps stammen.
Datendump-Methoden können in vier Kategorien unterteilt werden: dynamischer inkrementeller Dump, dynamischer Massendump, statischer inkrementeller Dump und statischer Massendump.
Registrieren von Protokolldateien
Format und Inhalt von Protokolldateien
Protokolldateien sind Dateien, die zum Aufzeichnen von Transaktionsaktualisierungsvorgängen in der Datenbank verwendet werden. Es gibt zwei Hauptformate von Protokolldateien: Protokolldateien in Datensätzen und Protokolldateien in Datenblöcken.
Protokolldateien in Datensatzeinheiten. Zu den Inhalten, die registriert werden müssen, gehören:
1. Die Startmarkierung jeder Transaktion
2. Die Endmarkierung jeder Transaktion
3. Alle Aktualisierungsvorgänge jeder Transaktion
Der Inhalt Jeder Protokolldatensatz enthält:
1. Transaktionsidentifikation (geben Sie an, um welche Transaktion es sich handelt)
2. Art der Operation (Einfügen, Löschen oder Ändern)
3. Operationsobjekt (interne Identifikation aufzeichnen)
4. Alter Wert der Daten zuvor Update
5. Update Der neue Wert der endgültigen Daten
Die Rolle von Protokolldateien
Protokolldateien spielen eine sehr wichtige Rolle bei der Datenwiederherstellung. Es kann für die Wiederherstellung nach Transaktionsfehlern und Systemfehlern verwendet werden und unterstützt Sicherungskopien bei der Wiederherstellung nach Medienfehlern.
Die spezifischen Funktionen sind:
1. Protokolldateien müssen für die Wiederherstellung nach Transaktionsfehlern und Systemfehlern verwendet werden.
2. Die Sicherungskopie und die Protokolldatei können effektiv kombiniert werden die Datenbank wiederherstellen.
3. Im statischen Dump-Modus können auch Protokolldateien erstellt werden.
Protokolldatei registrieren
Um sicherzustellen, dass die Datenbank wiederherstellbar ist, müssen bei der Registrierung von Protokolldateien zwei Grundsätze befolgt werden:
1. Die Reihenfolge der Registrierung muss strikt mit der zeitlichen Reihenfolge der gleichzeitigen Transaktionsausführung übereinstimmen.
2. Protokolldateien müssen zuerst registriert werden dann in die Datenbank geschrieben.
Wiederherstellung nach Transaktionsfehlern
Die Wiederherstellung nach Transaktionsfehlern wird vom System automatisch durchgeführt und ist für Benutzer transparent. Die Wiederherstellungsschritte des Systems sind:
1. Scannen Sie die Protokolldatei in umgekehrter Richtung (d. h. scannen Sie die Protokolldatei von vorne), um den Aktualisierungsvorgang der Transaktion zu finden.
2. Führen Sie den umgekehrten Vorgang des Aktualisierungsvorgangs der Transaktion durch. Das heißt, der „Wert vor der Aktualisierung“ im Protokolldatensatz wird in die Datenbank geschrieben. Wenn es sich bei dem Datensatz um eine Einfügeoperation handelt, entspricht dies einer Löschoperation. Wenn es sich bei dem Datensatz um eine Löschoperation handelt, entspricht dies einer Änderung des vorherigen Werts des geänderten Wertes.
3. Scannen Sie die Protokolldatei weiterhin in umgekehrter Reihenfolge, suchen Sie nach anderen Aktualisierungsvorgängen der Transaktion und machen Sie dasselbe.
4. Setzen Sie die Verarbeitung auf diese Weise fort, bis die Startmarkierung dieser Transaktion gelesen und die Wiederherstellung nach Transaktionsfehler abgeschlossen ist.
Wiederherstellung nach einem Systemausfall
Die Wiederherstellung nach einem Transaktionsfehler wird automatisch vom System durchgeführt und ist für Benutzer transparent. Die Wiederherstellungsschritte des Systems sind:
1. Durchsuchen Sie die Protokolldatei vorwärts, um die Transaktionen zu finden, die vor dem Auftreten des Fehlers übermittelt wurden, und zeichnen Sie ihre Transaktionskennungen in der Redo-Warteschlange auf. Ermitteln Sie gleichzeitig die Transaktionen, die zum Zeitpunkt des Fehlers noch nicht abgeschlossen waren, und zählen Sie deren Transaktionsdarstellungen in die Rückgängig-Warteschlange.
2. Machen Sie jede Transaktion in der Rückgängig-Warteschlange (UNDO) rückgängig.
Die Methode zur UNDO-Verarbeitung besteht darin, die Protokolldatei in umgekehrter Reihenfolge zu scannen und den umgekehrten Vorgang für den Aktualisierungsvorgang jeder UNDO-Transaktion durchzuführen, d. h. den „Wert vor der Aktualisierung“ im Protokolldatensatz in die Datenbank zu schreiben.
3. Redo REDO-Verarbeitung für jede Transaktion in der Redo-Warteschlange
Die Methode zur REDO-Verarbeitung besteht darin, die Protokolldatei vorwärts zu scannen und den Protokolldatei-Registrierungsvorgang für jede REDO-Transaktion erneut auszuführen. Das heißt, der „aktualisierte Wert“ im Protokolldatensatz wird in die Datenbank geschrieben.
Die Methode zur Wiederherstellung nach dem Fehler besteht darin, die Datenbank neu zu installieren und dann die abgeschlossenen Transaktionen zu wiederholen.
1. Das Laden der neuesten Datenbanksicherungskopie dient dazu, die Datenbank auf den Konsistenzzustand des neuesten Dumps wiederherzustellen.
2. Laden Sie eine Kopie der entsprechenden Protokolldatei und wiederholen Sie die abgeschlossene Transaktion. Das heißt, scannen Sie zunächst die Protokolldatei, um die Identität der Transaktion herauszufinden, die beim Auftreten des Fehlers festgeschrieben wurde, und zählen Sie sie in die Redo-Warteschlange. Anschließend wird die Protokolldatei vorwärts durchsucht, um alle Transaktionen in der Redo-Warteschlange zu wiederholen. Das heißt, der „aktualisierte Wert“ im Protokolldatensatz wird in die Datenbank geschrieben.
Die Wiederherstellung nach einem Medienfehler erfordert ein Eingreifen des DBA. Der DBA muss jedoch nur die kürzlich gesicherte Datenbankkopie und die zugehörigen Protokolldateikopien neu installieren und dann die vom System bereitgestellten Wiederherstellungsbefehle anordnen. Der spezifische Wiederherstellungsvorgang wird weiterhin vom DBMS abgeschlossen.
Da die Festplattenkapazität immer größer wird, werden die Preise immer günstiger. Um zu vermeiden, dass ein Festplattenausfall die Verfügbarkeit der Datenbank beeinträchtigt, bieten viele Datenbankverwaltungssysteme Datenverteilungsfunktionen für die Datenbankwiederherstellung. Je nach Wunsch des DBA wird die gesamte Datenbank oder die darin enthaltenen Schlüsseldaten automatisch auf eine andere Festplatte kopiert.
Da die Datenbankspiegelung durch das Kopieren von Daten erreicht wird, verringert das häufige Kopieren von Daten natürlich die Betriebseffizienz des Systems. Daher entscheiden sich Benutzer bei Zeitanwendungen oft dafür, nur Schlüsseldaten und Protokolldateien zu spiegeln, anstatt die gesamte Datenbank zu spiegeln.
(Empfohlenes Tutorial:MySQL-Video-Tutorial)
Das obige ist der detaillierte Inhalt vonWelche Datenbankwiederherstellungstechnologien gibt es?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!