Ich bin mir nicht sicher, wo eine solche Frage wirklich hingehört, da sie von einem Unraid-Linux-Server mit einem Plex Media Server-Container stammt, der SQLite verwendet (ich suche nach einer Fehlerbehebung auf Stammebene). Ich habe sowohl in Unraid- als auch in Plex-Foren gepostet, aber ohne Erfolg.
Mein Plex-Container ist bei Unraid immer wieder ausgefallen, was dazu führte, dass ich Integritätsprüfungen, Neuaufbauten, Dumps, Importe und ein vollständiges Löschen und Neustarten durchführte (das alte Verzeichnis vollständig entfernen und von vorne beginnen). Bestenfalls bekomme ich es für ein paar Minuten zum Laufen, bevor der Container erneut ausfällt. Die Fehler, die ich erhalte, haben sich geändert, aber seit der letzten Situation (vollständiges Löschen und Neuinstallieren eines neuen Containers) erhalte ich den folgenden Fehler im Ausgabeprotokoll:
Fehler: Server kann nicht eingerichtet werden: sqlite3_statement_backend::loadOne:Datenbank-Disk-Image ist fehlerhaft (N4soci10soci_errorE)
Ich beschloss, die Datenbank auf meinen Windows-Rechner zu kopieren und darin herumzustöbern, um ein besseres Verständnis der Struktur zu bekommen. Beim Betrachten einer Tabelle namensMedienelementeIch bekomme den gleichen Fehler.
Offensichtlich ist eine der vermutlich wichtigsten Tabellen beschädigt. Meine Frage ist nun, was ich tun kann, um das Problem zu beheben oder die Ursache herauszufinden. Ich hätte gedacht, dass eine komplett neue Datenbank mein Problem beheben würde, es sei denn, es ist reiner Zufall, dass zwei aufeinanderfolgende Datenbanken beschädigt wurden, bevor ich sie überhaupt berühren konnte, ohne Verbindung. Könnte es eine meiner Mediendateien sein? Könnte es Unraid sein? Könnte es meine Festplatte sein?
Zum Kontext, falls Sie mit Plex nicht vertraut sind: Sobald der Container läuft, scannt er meine Medienbibliothek und füllt sie mit Daten wie Metadaten, Postern, Wiedergabestatus, Bewertungen usw. Ich führe den komplett automatisierten Build durch und innerhalb von 30 Minuten bricht er zusammen, bevor ich meine Bibliothek überhaupt anpassen kann.
Unten finden Sie Verweise auf die Bash-Zeilen, die ich bei der Fehlerbehebung in mehreren Szenarien verwendet habe. Könnte für irgendjemanden irgendwo nützlich sein.
Integritätsprüfung:
./Plex\ SQLite "$plexDB" "PRAGMA integrity_check"
Aus Backup wiederherstellen:
./Plex\ SQLite "$plexDB" ".output recover.out" ".recover"
Entsorgen:
./Plex\ SQLite "$plexDB" ".output dump.sql" ".dump"
Importieren:
./Plex\ SQLite "$plexDB" ".read dump.sql"
Antwort1
Nach Stunden, Tagen und einer Woche der Fehlerbehebung aller Art. Dazu gehörte auch das Zurücksetzen des Docker-Images (und anderer im Beitrag erwähnter Bilder). In einem anderen Forum wurde vorgeschlagen, einen Memtest auszuführen. Ich habe Memtest auf einen bootfähigen USB-Stick geladen und konnte sofort feststellen, dass ein Stick defekt war. Nach dem Entfernen des Sticks habe ich keinerlei Probleme und alles ist völlig in Ordnung ... Seltsam.