Datenbankvalidation

<< Trace und Audit | IBExpert | Datenbankstatistik >>

Die deutschsprachige Dokumentation wird seit dem 26. Juli 2016 nicht mehr gepflegt. Aktuelle und vollständige Dokumentation finden Sie auf der englischsprachigen Webseite: IBExpert Documentation


Datenbankvalidierung (Datenbankzustand)

Firebird und InterBase® Datenbanken sind für ihre Stabilität bekannt. Allerding gibt es ein paar Sachen, die potentiell zu Problemen führen können. Datenbankvalidierung beinhaltet die Prüfung der Datenbankdatei, um sicherzugehen, dass die verschiedenen Daten-Strukturen ihre Integrität und interne Beschaffenheit beibehalten. Der Validierungsvorgang prüft drei verschiedene Arten Probleme:

  • Beschädigte Datenstrukturen: zum Beispiel, wenn eine Datenbankzeile über mehr als eine Seite verteilt wird, und der von der ersten Seite zur nächsten verlinkende Zeiger beschädigt ist oder fehlt, gibt es eine korrupte Datenstruktur. Firebird/InterBase® kann diese Situation korrigieren, der beschädigte Datensatz geht allerdings wahrscheinlich verloren.
  • Falsch zugewiesene Datenseiten: zum Beispiel, eine Seite kann für einen Transaktionsinventar, Headerinformation, Daten, Blobzeiger oder Indizes verwendet werden. Wenn eine Seite als einen bestimmten Seitentyp gekennzeichnet ist, jedoch Daten eines anderen Typs speichert, deckt Firebird/InterBase® diese auf. Allerdings kann Firebird/InterBase® diese Art Problem nicht selbst beheben, also wird es wahrscheinlich notwendig sein, einen Restore von einem Backup durchzuführen.
  • Verwaiste Datenseiten, die automatisch an den freien gemeinschaftlichen Speicher zurückgegeben werden. Üblicherweise füllt Firebird/InterBase® Datenseiten nicht ganz voll mit Datensätzen, um Platz für die schnelle Zufügung neuer Datensätze freizuhalten. Als Datensätze hinzugefügt und gelöscht werden, werden einige Seiten keine aktive Datensätze mehr enthalten. Ältere Firebird/InterBase®-Versionen verteilen diese Seiten nicht automatisch zurück auf den freien gemeinschaftlichen Speicher.

Der IBExpert Datenbankvalidierung Menüpunkt bietet alle Optionen, die auch im Firebird/InterBase® GFIX? zur Verfügung stehen.

Es wird geraten, zuerst einen Datenbankbackup durchzuführen, bevor Sie mit der Validierung anfangen. Wenn möglich soll die Datenbank heruntergefahren werden, so dass bei Notwendigkeit der Backup wiederhergestellt werden kann, ohne Verlust aller Transaktionen, die seit dem Backup ausgeführt worden sind.

Der Datenbankvalidierungs-Menüpunkt befindet sich im IBExpert Systemdienste Menü. Er ermöglicht eine Validierung der Datenbank und überprüft die Integrität der Datenstrukturen.

Bevor Sie mit der Validierung anfangen, trennen Sie mit IBExpert die Datenbankverbindung (rechtsklick Datenbankverbindung lösen im DB Explorer Baum), da Firebird/InterBase® exklusiven Datenbankzugriff benötigt, sollten eventuelle Fehler repariert werden. Wählen Sie die zu validierende, registrierte Datenbank aus. Folgende Optionen sind nichts anders als die vom GFIX? angebotenen Parameter und dürfen beliebig angegeben werden:

  • Limbo Transactions: (schwebende Transaktionen) hier prüft die Datenbank nach Transaktionen, die sich noch in limbo befinden, d.h. Transaktionen, die weder ausgeführt noch abgebrochen worden sind. Sehen Sie bitte Transactions in limbo für weitere Information.
  • Check Database: (Datenbank prüfen) hier wird die Datenbank validiert, aber nicht repariert.
  • Ignore Checksums: (Prüfsummen ignorieren) diese Option ignoriert alle Prüfsummenfehler. Eine Prüfsumme ist eine seitenweise Datenanalyse, um die Integrität zu prüfen. Eine schlechte Prüfsumme bedeutet, dass eine Datenseite wahllos überschrieben wurde (z.B. wegen eines Systemabsturzes).
  • Kill Shadows: (Shadowdateien vernichten) diese Option vernichtet alle nicht verfügbaren Shadowdateien.
  • Mend Database: (Datenbank reparieren) hier wird eine beschädigte Datenbank für einen Backup vorbereitet und die Reparatur jeglicher Datenbankkorruption - wenn möglich - durchgeführt.
  • Sweep Database: (Datenbank fegen) mit dieser Option wird die Datenbank "gefegt". (Siehe Datenbanksweep für weitere Information).
  • Validate Database: (Datenbank validieren) diese Option validiert die Datenbankstruktur.
  • Validate Full: (Vollständige Validierung) hier werden Datensatzfragmente validiert. Vermerk: Dieses Feature ist nicht in älteren InterBase® Versionen (vor v.6) verfügbar.
  • Output: (Ausgabe) Mit Verbose erhalten Sie einen detaillierten Bericht über den aktuellen Datenbankvalidierungsvorgang. Sie können hier auch bestimmen, ob der Protokoll auf dem Bildschirm angezeigt oder in eine Datei (mit Angabe des Laufwerks, Pfades und Dateinamens) gespeichert werden soll.

Dann starten Sie die Datenbankvalidierung mit dem grünen Pfeil-Symbol oder [F9]. Sie werden gebeten, sich einzuloggen

bevor die Validierung beginnt.

Output (Ausgabe)

Wenn keine Beschädigungen gefunden werden, erscheint eine Nachricht, dass keine Validierungsfehler entdeckt wurden. Wenn reparierbare Beschädigungen gefunden werden, erscheint ein Bericht mit der Anzahl der entdeckten Fehler und Fehlerarten. Manchmal werden irreparabele Beschädigungen entdeckt, wie zum Beispiel eine beschädigte Datenbankheaderseite oder beschädigte Speicherverteilungstabellen.

Siehe bitte Database Corruption für weitere Information über die Reparatur beschädigter Datenbanken.

Siehe auch:
deutschsprachig:
Datenbankeigenschaften
Backup Datenbank
Restore Datenbank
GFIX?
GBAK and GSPLIT?
Forced Writes
englischsprachig:
Database repair
How to analyse and repair a corrupted database
Database corruption
Firebird for the database expert: Episode 3 - On Disk Consistency
Preventing data loss
Alternative database repair methods
Detect and avoid database errors
Tracking down crashes on Win32 systems
Tracking down crashes on Linux

zurück zum Seitenanfang
<< Trace und Audit | IBExpert | Datenbankstatistik >>