Hallo!
Dank all der genialen Integrationen komme ich in meinem HomeAssistant an viele, viele Daten. Nun möchte ich gerne einige davon in eine SQL-Datenbank auf einem anderen Server schreiben. Am besten direkt, ohne eine REST-API (o.ä.) dazwischen zu betreiben.
Hat jemand so etwas schon einmal realisiert?
HA setzt von Hause aus die SQLite-DB ein.
Wenn dir das nicht reicht, schaue in das Tutorial von Simon zum Einsatz von MariaDB
Es geht mir nicht um die DB, die HA nutzt.
Es geht darum, dass ich einen separaten SQL-Server habe, in dem diverse andere, Nicht-HA-Datenbanken laufen. In diesem SQL-Server gibt es eine Datenbank, wo ich in einer Tabelle entsprechend Werte speichern möchte, die über HA-Sensoren kommen.
Tja, da wirst du dir eine eigene Instanz bauen müssen um Daten von einer DB in die andere zu schaufeln. Mir ist keine solche Anwendung/Integration für HA bekannt.
Oder du stellst komplett auf eine externe Datenbank für HA um, vielleicht wird es dann einfacher die von dir benötigten Daten zu extrahieren. Muss aber nicht sein.
https://github.com/qrioniclabs/homeassistant-mysql_command
Ich bin mir aber nicht sicher ob das nicht funktioniert nach der notify Änderung
Du könntest aber über notify in eine csv Datei schreiben und die dann in deine db importieren .
Hängt davon ab was du wie oft schreibst
Ich habe GitHub - qrioniclabs/homeassistant-mysql_command: A Home Assistant custom component that creates a Notify service to send commands (e.g. INSERT) to a MySQL server. · GitHub installiert und in der configuration.yaml folgende Einträge hinzugefügt:
notify:
* name: mysql_command_ha
platform: mysql_command
host: 127.0.0.1
username: \*\*\*\*\*\*\*\*\*
password: \*\*\*\*\*\*\*\*\*
db: homeassistant
* name: mysql_command_wz
platform: mysql_command
host: 192.168.x.x
username: \*\*\*\*\*\*\*\*\*
password: \*\*\*\*\*\*\*\*\*
db: Energie
Damit habe ich Zugriff auf zwei unterschiedliche Datenbanken; einmal localhost und einmal auf ein anderen Server.
Hier ist noch ein actions-Beispiel für eine Automation:
actions:
action: notify.mysql_command_wz
metadata: {}
data:
message: >-
insert into homeassistant.Aussen(Temperatur,Humi,Taupunkt,Zeit)values({{states(‘sensor.aussentemperatur’)}},{{states(‘sensor.aussenfeuchte’)}},{{states(‘sensor.thermalcomfort_ausen_taupunkt’)|float|round(1)}},now())
2 „Gefällt mir“