![]() |
Datenbank: Firebird • Version: 2.0 • Zugriff über: Delphi 5
Defekte Datenbank
Gibt es eine Möglichkeit defekte Datenbank wieder herzustellen ?
Kommt ständig Konsistenz-Fehler ..... Vereinzelt komme ich an Datensätze ran ! |
Re: Defekte Datenbank
Entweder über gfix (liegt im BIN Verzeichnis der Firebird-Installation) oder
![]() |
Re: Defekte Datenbank
Hallo,
![]() Heiko PS: Ich würde aber nat. auch rausfinden, wieso die DB kaputt ist. |
Re: Defekte Datenbank
Das Problem ist durch Memo-Felder entstanden !
Ich habe jetzt versucht einfach alle Datensätze in eine identische Tabelle zu kopieren ! Habe einfacg gesagt beginne bei 0 und geh alle Datensätze durch und versuche sie zu kopieren !(mit try except .....) Nur kommt trotzdem der Fehler (gds software consi.......................) . Gibt es ein Statement womit man herausfindet ob ein Datensatz defekt ist ? Von 200000 Datensätzen gehe 180000 und der Rest ist fehlerhaft ... Kennt jemand den Hintergrund ? Ich geh mal davon aus es gibt dazu irgenwelche einträge in den Systemtabellen wobei diese sich ja auf die Felder beziehen .... |
Re: Defekte Datenbank
Geht der Export als Metadaten (inkl. Daten)?
|
Re: Defekte Datenbank
Habs probiert : Fehlermeldung !
Error Message: ---------------------------------------- Unsuccessful execution caused by a system error that precludes successful execution of subsequent statements. internal gds software consistency check (can't continue after bugcheck). |
Re: Defekte Datenbank
Hallo,
so einfach ist das nicht. Die DB ist in (xkB)-Seiten aufgeteilt. Jede Tabelle belegt mehrere (naja, viele) dieser Seiten, für Daten, Indezes, Blobs. Das ganze ist wild durcheinander, obwohl FB versucht, gleichartige Daten hintereinander zu speichern. Im Seiten-Header steht u.a. drin, was konkret auf der Seite gespeichert ist (Metadaten,Date,Index,Blob). Gibt es Schreibfehler (z.B. Rechnerabsturz), wird viell. ein Index-wert auf eine falsche Seite geschrieben. FB kann bis zu einem bestimmten Grad erkennen, das die Daten auf einer Seite falsch geschrieben sind (consistency check). Da hilft kein "ich kopier mal ein bissel, mal sehen, wie viel Records ich bekomme", bei Paradoy klappt sowas vielleicht noch, bei FB nicht mehr. Geh mal genauso vor, wie bei meinem Link beschrieben. Das geht los mit "FB anhalten, Datei von Hand (Explorer)" kopieren. Heiko |
Re: Defekte Datenbank
Des bringt auch nichts habe es probiert !
|
Re: Defekte Datenbank
Hallo,
den Link komplett ausprobiert ? Wo genau kommt denn bei der dortigen Vorgehensweise immer noch der Fehler. Hast du verstanden, dass nach gfix immer Backup/Restore gemacht werdne muss ? Falls es gar nicht mehr geht: 1. Versuch, die Daten mit IBExpert und Eingrenzung der Primär-Schlüssel zu extrahieren select * from project where (projectid>=0) and (projectid<=10000) 2. leere DB erzeugen und per IBDataPump füllen klappt aber auch nicht immer 3. IB-FirstAid ist viell. letzte Rettung. Heiko |
Re: Defekte Datenbank
Gibt es eine Möglichkeit diese Exception abzufangen ?
|
Re: Defekte Datenbank
Hallo,
ich glaube nicht, wenn try except nicht geht, ist Schluss ;( sobald die DB an dieser Stelle ist, ist wohlSense. Du kannst nur probieren, herauszufinden, welche Datensätze genau betroffen sind. Das geht über ein select * from tab order by prim_key Dann im Programm laufen lassen, und bei der Exception die aktuelle Id (prim_key) anzeigen lassen, Ev. hilft auch, alle Datensätze per Schleife und select * from tab where prim_key=:schleife_i mal zu prüfen, vielleicht die erfolgreichen Id's in eine Textdatei. Dann die Ids auslesen und in eine leere DB packen. Ist ein rumfummeln ohne Ende. Bei IBExpert kann man per "Extracte MetaData" auch Datensätze exportieren und dort Bereiche angeben. Wo ist denn das Backup der DB ? Heiko |
Re: Defekte Datenbank
Was passiert eigentlich intern in der Datenbank, solche Datensätze kaputt gehen ?
Weiss das jemand genau ? Würde mich mal interessieren .... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:43 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz