Wenn eine Datenbank mit Transaktionslogspiegelung gestartet wird, führt der Datenbankserver eine Reihe von Prüfungen und automatischen Vorgängen für die Wiederherstellung durch, um zu bestätigen, dass das Transaktionslog und dessen Spiegelung nicht beschädigt sind, sowie um bestimmte Probleme zu beheben, falls eine Beschädigung festgestellt wird.
Beim Starten prüft der Server, ob das Transaktionslog und dessen Spiegelung identisch sind, indem er beide Dateien vollständig vergleicht. Wenn sie identisch sind, starten die Datenbanken wie üblich. Der Vergleich von Log und Spiegelung verlängert die Startzeit der Datenbank.
Wenn die Datenbank wegen eines Systemausfalls gestoppt wird, ist es möglich, dass einige Vorgänge in das Transaktionslog geschrieben wurden, jedoch nicht in die Spiegelung. Wenn der Server feststellt, dass das Transaktionslog und die Spiegelung bis zum Ende der kürzeren Datei identisch sind, wird der Rest der längeren Datei in die kürzere Datei kopiert. Dadurch sind Log und Spiegelung wieder identisch. Nach diesem automatischen Wiederherstellungsschritt startet der Server wie üblich.
Wenn sich bei der Prüfung herausstellt, dass das Transaktionslog und der Transaktionslogspiegel im Hauptteil Unterschiede aufweisen, ist eine der Dateien beschädigt. In diesem Fall wird die Datenbank nicht gestartet und eine Fehlermeldung mit dem Hinweis ausgegeben, dass das Transaktionslog oder dessen Spiegelung ungültig ist.
Sie können auch das Dienstprogramm zur Logkonvertierung (dbtran) verwenden, um Transaktionslogs zu validieren, unabhängig davon, ob Sie ein Online- oder Offline-Transaktionslog verwenden. Wenn das Logkonvertierungs-Dienstprogramm die Logdatei lesen kann, ist sie gültig. Siehe Dienstprogramm zur Transaktionslogkonvertierung (dbtran).
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |