3 Varianten: SQLite Datenbank Zugriff - Home Assistant
Für einen direkten Zugriff auf die SQLite-Datenbank von Home Assistant gibt es mehrere Möglichkeiten. Am einfachsten ist die Verwendung von SQLite Web.
Wozu?
Direkter Zugriff auf die Home Assistant Datenbank ermöglicht detaillierte Analysen und Abfragen der gespeicherten Daten. Neben dem Erstellen eigener Sensoren auf Basis spezieller Abfragen können die Werte bestimmter Sensoren hinzugefügt, gelöscht oder geändert werden. Direkt über die Datenbank konnte ich, als Beispiel, historische Werte einer alten Influx-DB in die Home-Assistant Langzeitstatstik importieren und diese unter anderem als Tabelle anzeigen.
Variante 1: SQLite Web - Einfach und für alle Installationsvarianten
Abhängig von der Installationsvariante kann beim Einsatz von HAOS einfach das SQLite Web Add-On installiert und verwendet werden:
Ohne Add-On-Store kann SQLite Web über Docker direkt gestartet werden:
SQLite Web in Docker starten
Beim Einsatz ohne HAOS mit Docker-Setup kann SQLite aus dem HA-Ordner mit folgendem Befehl gestartet werden:
docker run -it --rm -p "9999:8080" -v .:/data -e SQLITE_DATABASE="home-assistant_v2.db" coleifer/sqlite-web
Der Aufruf von SQLite Web erfolgt dann einfach durch http://localost:9999 bzw. sollte Home Assistant auf einem anderen PC / Server laufen mit: http://ServerIP:9999
Informationen zu meinem Docker Setup, siehe : Home Assistant: Docker Inbetriebnahme + SSL Internetzugriff
Wer Docker als Installationsvariante verwendet, kann SQL-Abfragen direkt im Home-Assistant Container absetzen:
Variante 2: Alternativ: direkter Aufruf über den bestehenden Docker-Container
Die SQLite-Datenbank kann über Linux-Board mitteln mit dem Befehl sqlite ausgelesen und bearbeitet werden.
docker exec -it home-assistant /bin/bash
Im Docker-Container kann mit folgendem Befehlen sqlite installiert und die Datenbank verbunden werden:
bash-5.1# apk add sqlite
bash-5.1# sqlite3 /config/home-assistant_v2.db
Die Verbindung auf die Datenbank erlaubt es beliebige Datenbank-Queries auszuführen, siehe auch: Home Assistant SQlite - Statistik-Daten ändern
Variante 3: VSCode und SQLite3 Editor
Etwas komfortabler ist der direkte Zugriff auf das Host-Filesystem über VSCode und die VSCode-Extension SQLite-Editor:
Für das Bearbeiten habe ich nicht den Studio-Code Server in Home-Assistant verwendet, sondern VSCode lokal installiert und eine Remote-Verbindung auf den Host - auf dem der HA-Docker-Container läuft - aufgebaut. Informationen zu VSCode, siehe: "die 4 besten Tools um Text-Dateien zu vergleichen" und "PowerShell Editoren im Vergleich: ISE, Visual Studio Code"
Mit der VSCode-Extension SQLite3 Editor, können die Datenbank-Dateien einfach im Editor geöffnet werden:
Per Dropdown können die einzelnen Tabellen der Datenbank ausgewählt und angezeigt werden:
Zudem kann eine eigene SQL-Query für die Abfrage verwendet werden.
Ausgeführt werden die Queries durch Drücken von Umsch + ENTER:
Einzelne Werte können direkt in der Tabelle geändert werden:

{{percentage}} % positiv
