Seite 1 von 1

SQL-Fehler: The database disk image is malformed

Verfasst: Fr 23. Aug 2013, 19:50
von rainerg
Kann sein, dass das bei einem BlueScreen passiert ist, den ich vor knapp zwei Wochen hatte. Passt mit dem Hinweis zusammen, dass seit 12 Tagen kein Backup mehr gelaufen ist.

Ist die DB damit defekt? Gibt es da eine Möglichkeit der Reparatur?
Evtl. kann ich noch eine Backup der DB von kurz vor dem Crash heraus suchen, würde das ggf. helfen?

Hier die vollständige Meldung:

Code: Alles auswählen

The database disk image is malformed
database disk image is malformed
  bei System.Data.SQLite.SQLite3.Reset(SQLiteStatement stmt)
  bei System.Data.SQLite.SQLite3.Step(SQLiteStatement stmt)
  bei System.Data.SQLite.SQLiteDataReader.NextResult()
  bei System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
  bei System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
  bei System.Data.SQLite.SQLiteCommand.ExecuteNonQuery()
  bei Alexosoft.BackupService.Engine.BackupEngine.ExecuteNonQuery(String cmdText)
  bei Alexosoft.BackupService.Engine.BackupSystem.AsyncDeleteBackup()
  bei System.Threading.ThreadHelper.ThreadStart_Context(Object state)
  bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
  bei System.Threading.ThreadHelper.ThreadStart()

Re: SQL-Fehler: The database disk image is malformed

Verfasst: Sa 24. Aug 2013, 17:51
von Alex
Das kann durchaus sein. In der Regel passiert dies nur, wenn die Datenbank nicht korrekt geschlossen wurde.

Vielleicht hilft dir das hier weiter: http://www.alexosoft.de/support/kb/article/1012231

Re: SQL-Fehler: The database disk image is malformed

Verfasst: Do 29. Aug 2013, 09:00
von rainerg
Erstmal Danke für die flinke Antwort :-).

Ich komme erst jetzt dazu, mich näher damit zu beschäftigen. In der Anleitung steht, das BSH zu beenden ist. Nur das Programm oder muss auch der Dienst gestoppt sein?

Re: SQL-Fehler: The database disk image is malformed

Verfasst: Sa 31. Aug 2013, 23:40
von rainerg
Irgendwie klappt das nicht wie gewünscht.

Das erstellen der output.sql ist soweit okay
Dann starte ich das erzeugen der DB. Das scheint auch anzulaufen. Im Explorer kann ich sehen, wie die neue DB in der Größe wächst. Am Ende ist die Datei aber 0 Byte groß. Ich habe die output.sql mal im Editor geladen und am Ende (>200 MB!!) mal dasrollback rausgenommen. Gleiches Ergebnis.

Dies sind mal die letzten Zeilen der output.sql (ohne die Rollback-Zeile):

Code: Alles auswählen


...
INSERT INTO "folderlink" VALUES(153,1244);
INSERT INTO "folderlink" VALUES(154,1244);
DELETE FROM sqlite_sequence;
INSERT INTO "sqlite_sequence" VALUES('versiontable',1244);
CREATE UNIQUE INDEX fileTableIndex ON filetable (fileName, filePath);
CREATE INDEX fileverstionIndex ON fileversiontable (fileSize, fileDateModified);
CREATE UNIQUE INDEX folderTableIndex ON foldertable (folder ASC);
CREATE INDEX filePackageIndex ON fileversiontable (filePackage);

Re: SQL-Fehler: The database disk image is malformed

Verfasst: Mo 2. Sep 2013, 21:33
von rainerg
Da ich im Moment keine Dateien aus dem Backup benötige, habe ich einfach ein neues Backup konfiguriert und laufen lassen.

Die DB ist jetzt im Backup dabei - oder ergeben sich dadurch Probleme?

Re: SQL-Fehler: The database disk image is malformed

Verfasst: Mo 2. Sep 2013, 23:04
von Alex
In der Tat ist die Rollback-Zeile falsch. Keine Ahnung, warum die erzeugt wird.

Die DB im Backup sollte keine Probleme machen.
Mir ist aber gerade aufgefallen, dass ich vergessen habe dir zu sagen, das auf dem Sicherungsmedium ebenfalls eine Kopie der DB angelegt wird Backup.bshdb.  ::)

Re: SQL-Fehler: The database disk image is malformed

Verfasst: Di 3. Sep 2013, 00:14
von rainerg
[quote="Alex"]
In der Tat ist die Rollback-Zeile falsch. Keine Ahnung, warum die erzeugt wird.

Die DB im Backup sollte keine Probleme machen.
Mir ist aber gerade aufgefallen, dass ich vergessen habe dir zu sagen, das auf dem Sicherungsmedium ebenfalls eine Kopie der DB angelegt wird Backup.bshdb.  ::)
[/quote]

Gut zu wissen. Für den nächsten Crash ;-).

Der Eintrag zur Reparatur der DB sollte allerdings etwas überarbeitet werden. Mal ist von SQlite mal von SQLite3 und BSH und BSH3 die Rede. Könnte einige vielleicht verwirren.

Re: SQL-Fehler: The database disk image is malformed

Verfasst: Di 3. Sep 2013, 17:18
von Alex
Danke für die Rückmeldung zum Artikel, der wird überarbeitet :)

Re: SQL-Fehler: The database disk image is malformed

Verfasst: Sa 26. Apr 2014, 12:31
von rainerg
Ich bekomme diesen Fehler inzwischen wieder dauernd.

Das merkwürdige ist allerdings: Wenn ich die Sicherung manuell durchführe klappt es.

Re: SQL-Fehler: The database disk image is malformed

Verfasst: So 27. Apr 2014, 12:09
von Alex
Hmm.. Ich habe nochmal danach gesucht, scheint aber öfters in Verbindung mit älteren SQLite Versionen aufzutreten. Ich werde mal schauen, dass ich eine neuere Version einbinde. Eventuell läuft es dann stabiler.