Error SQL Error: database disk image is malformed

diese fehlermeldung hab ich grad beim import eines tracks bekommen.
bedeutet was ?

die überprüfung der DB hat nix ergeben.

Vermutlich ist die Datenbankdatei defekt, durch einen Absturz o.ä. - kannst du mir die zuschicken oder irgendwo hochladen?

moin, hast ne email mit dem downloadlink.

Danke. Ich habe mir die gerade mal vorgenommen. Sie scheint wirklich defekt zu sein.

Falls du kein Backup hast, kannst du die Datei versuchen zu reparieren, indem du einen Dump erzeugst, und den direkt in eine neue Datenbank einspielst. Dazu benötigst du das sqlite3-Kommandozeillenprogramm (sqlite3.exe), das findest du hier: http://www.sqlite.org/download.html (unter "sqlite-shell-win32).

Die sqlite3.exe kopierst du in einen neuen, leeren Ordner. Außerdem kopierst du die Datenbankdatei dorthin, am besten unter einem Namen ohne Leerzeichen, zum Beispiel “kaputt.db”.

Dann öffnest du die Windows-Kommandozeile, wechselst mit cd in den Ordner, und gibst folgenden Befehl ein:

echo .dump | sqlite3 kaputt.db | sqlite3 neu.db

(so getestet gerade unter Mac OS, sollte aber auch unter Windows funktionieren)

Es wird nun die neue, reparierte Datei neu.db erzeugt. Ob dabei irgendwelche Daten verloren gegangen sind, musst du am besten selbst überprüfen.

Ich rate übrigens sehr davon ab, die Datenbankdatei auf einen externes Laufwerk (z.B. USB) zu legen, zumindest wenn häufig Schreibzugriffe darauf stattfinden; offenbar reicht eine kurze Unterbrechung der USB-Verbindung, um die Datei zu schrotten. Regelmäßige Backups bieten sich ohnehin an.

hallo torben, vielen dank für deine mühe.

ich hab zwar nen backup, wollt aber mal schauen, ob dein vorschlag klappt.
hab es so gehändelt, wie du beschrieben hast, es wurde auch ne neue DB erstellt aber nachdem sie auf 2 GB angewachsen war wurde sie zum schluss wieder 0 kb groß.
nur so als feedback.

Dann öffnest du die Windows-Kommandozeile, wechselst mit cd in den Ordner, und gibst folgenden Befehl ein:
Code: [Select]
echo .dump | sqlite3 kaputt.db | sqlite3 neu.db
(so getestet gerade unter Mac OS, sollte aber auch unter Windows funktionieren)
Es wird nun die neue, reparierte Datei neu.db erzeugt. Ob dabei irgendwelche Daten verloren gegangen sind, musst du am besten selbst überprüfen.

Hallo, ich habe auch das Problem. Warscheinlich nach Abschalten der ext. FP.
Folgendes habe ich gemacht:
sqlite3.exe und sqlite3.dll in einen leeren Ordner auf Desktop.
Jetzt die Datei database.mldb in den selben Ordner. Umbenannt in databasealt.mldb (hier schon die erste Unklarheit: mldb oder wie angegeben db???)
Auch die Eingaben sind nicht verständlich: Hier bitte mal etwas deutlicher: Leerräume so wie abgebildet, einzeln eingeben oder mit backslash hintereinander, Ich jedenfalls blicke da nicht wirklich durch. Ist aber auch kein Wunder für einen der froh ist wenn sein Computer angeht ohne Fehlermeldung ;D ;D ;D
Bitte lasst mich nicht doof sterben. Vielen Dank im Voraus… Mecky

Seit mAirList 4.4 wird die Endung *.mldb statt *.db verwendet. Ist aber weiterhin eine sqlite3-Datenbank. Die sqlite3.exe ist bei aktuellen mAirList-Versionen auch im Installationsordner zu finden.

Vorgehen halt sonst wie oben - alles genauso eingeben (mit den Pipe-Zeichen).

Danke für die schnelle Antwort, klasse Service. Ordner mit folgendem Inhalt: databasealt.mldb, sqlite3.dll, und sqlite3.exe

Übrigens habe ich die version 5.2.6 Build 2997

Ich zeige jetzt mal meine Eingabe: echo .dump | sqlite3 databasealt.mldb | sqlite3 databaseneu.mldb
Nach ENTER tut sich hier nichts.
Bitte nochmal für mich und damit für einen echten Anticomputer-Manschen anhand meiner Angaben die richte komplette Eingabe, ein riesiges BITTE.

“Tut sich nichts” = es kommt sofort wieder der Prompt? Keine Fehlermeldung?

Das kann auch ein gutes Zeichen sein. Wurde die Ausgabedatei denn erzeugt?

…gutes Zeichen kling toll. Aber nichts ist nichts. Der blimkende Cursor sringt ein runter und das war es. Auch eine Datei wurde nicht erzeugt. Habe das Programm aus dem mAirlist Ordner verwendet, aber auch da das Selbe. Gibt es die Möglichkeit das du über Teamviewer mal drauf schaust?

Gerade schlecht… Wie groß ist die Datenbankdatei aktuell? Wenn sie als Zip gepackt wird?

So, da zeigt sich meine ganze Hilflosigkeit. Mein ZIP-Programm erstellt keine ZIP-Datei sondern eine egg-Datei die nur unwesendlich kleiner ist als die Originale Datei. Wir reden hier von 3.552.314.KB zu 4.903.296 KB…

Oh, also ist die Datenbank riesig. Das heißt im Umkehrschluss, dass die Konvertierung schon etwas dauern kann.

Starte also den Befehl nochmal und gib ihm etwas Zeit. Kann schon einige Minuten (oder länger) dauern.

OK, mach ich. Melde mich dann morgen wieder. muss los, lass den Computer aber laufen.
Erstmal dir Torben vielen Dank für deine Mühen . glg Mecky

…nach einer Std. keine Bewegung… na dann bis Morgen…

War auch bis heute Morgen keine Reaktion zu sehen. Ich gehe jetzt einen harten Weg, neue Datenbank erstellt und alles neu einlesen. Die Datenbank hat eine andere Bezeichnung sodas ggf die Alte doch wieder hergestellt werden kann. Ich kann mir nochimmer nicht erklären warum es bei mir nicht geklappt hat. Deshalb möchte ich weiter am Ball bleiben. Wäre also für deine Hilfe sehr dankbar.

Probier doch mal folgenden Befehl:

sqlite3.exe databasealt.mldb

Es sollte jetzt der SQLite-Kommandozeilen-Prompt angezeigt werden (“sqlite>”).

Hier gibst du ein: .dump

Auf dem Punkt vor “dump” achten!

Werden dann Daten angezeigt?

Hallo Torben

sqlite3.exe databasealt.mldb eingegeben mit und ohne “cd” vorher keine Reaktion.
Beim Start von SQlite steht schon “sqlite>” am Anfang der Eingabazeile, also habe ich versucht mit “.dump” weiter zu machen. Hier erscheint dann “PRAGMA foreign_keys=OFF; BEGIN TRANSAKTION; COMMIT;” untereinander. Als Eingabezeilenanfang steht dann wieder sqlite> Wenn das gewünscht ist, wie geht es dann weiter? Wenn nicht dann bin ich wieder am Anfang.

…OK, jetzt tut sich was. Als Erstes habe ich “.open databasealt.mldb” ENTER und dann “.dump” eingegeben und nun rasen Dateien über den Bildschirm. Mal sehen wo das hin führt…

…guten Morgen…

Im Fenster waren auch bis heute Morgen nur wildvorbei fliegende Buchstaben und Wortfetzen zu sehen.
Also ich weis jetzt nicht mehr weiter. Ich hoffe dir fällt nochwas ein… lg