GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wo sucht Django nach einer SQLite-Instanz? (SQLite 3.8.3 oder höher ist erforderlich (gefunden 3.7.17))

Ich bin auf das gleiche Problem gestoßen. Ich hatte sqlite 3.28.0 installiert, aber ich bekam den gleichen Fehler während der Migration.

Beim Überprüfen der Ausgabe des Fehlers konnte ich sehen, dass die Zeile 63 der Datei base.py die Ausnahme aufgrund des Aufrufs der Funktion sqlite_version_info ausgelöst hat.

Sie können die Spezifikation unter diesem Link einsehen:DB-API 2.0-Spezifikation

sqlite3.sqlite_version_info
"Die Versionsnummer der SQLite-Laufzeitbibliothek als Tupel von Ganzzahlen."

Die Lösung, die ich nach einigen Tests gefunden habe, bestand darin, LD_LIBRARY_PATH mit dem Pfad zum neuen sqlite:

zu setzen

export LD_LIBRARY_PATH="/usr/local/lib"

Nachdem Sie diese Variable gesetzt haben, können Sie das Ergebnis mit einem kleinen Python-Skript überprüfen:

from sqlite3 import dbapi2 as Database
print(Database.sqlite_version_info)

und das Ergebnis sollte etwa so aussehen:(3,28,0)

Mit diesem Ansatz konnte ich migrieren und das Django-Setup fortsetzen. Ich werde diesen Beitrag aktualisieren, falls ich andere Lösungen finde. Ich hoffe, das hilft


Linux
  1. Wo suchen ausführbare Dateien zur Laufzeit nach gemeinsam genutzten Objekten?

  2. Wie kann ich Exit-Codes für Anwendungen nachschlagen?

  3. Einen Befehl ausführen, wo eine Datei gefunden wird?

  4. Wofür steht Etc?

  5. Wo sucht Eclipse unter Linux nach eclipse.ini?

6 aufregende neue ShellHub-Funktionen, auf die Sie 2021 achten sollten

Linux Look Command Tutorial für Anfänger (mit Beispielen)

Wo ist .bashrc für root?

IPTables-Modul ip_tables für root nicht gefunden

Wohin gehen Metadaten, wenn Sie eine Datei speichern?

Was bewirkt ENV („_“) für das Anti-Debugging?