openHAB 2: MariaDB Persistence mit Synology NAS

openHab bietet eine Vielzahl an Möglichkeiten, wie wir unser Smarthome konfigurieren und verwalten können. In diesem HowTo möchte ich euch die Konfiguration einer MariaDB Datenbank auf einer Synology DiskStation näher bringen. Eine Datenbank ermöglicht es uns, Sensordaten persistent zu gestalten. Das bedeutet, dass wir auf vergangene Werte zurückgreifen und diese für weitere Berechnungen heranziehen können. Beispielsweise lässt sich auf diese Weise der Stromverbrauch der letzten Monate und die somit die entstandenen Kosten kalkulieren. Besonders in der Kombination mit einer smarten Steckdose (siehe TP-Link HS110 Tutorial) stellt das eine große Bereicherung dar.

Nachdem ich die Installation von openHAB 2 auf einer Synology DS per Paket-Zentrum, sowie über die Containersoftware Docker (unbedingt zu bevorzugen) bereits erklärt habe, können wir gleich uns gleich ins Geschehen stürzen. Sollte das Basissetup noch nicht hergestellt sein, würde ich dir die verlinkten Tutorials unbedingt ans Herz legen.

 

MariaDB Datenbank für openHAB anlegen

Eine ausführliche Anleitung, wie man einen MariaDB-Server auf der Synology DS installiert, könnt ihr bereits hier abrufen: „Synology MariaDB Datenbank erstellen„. Deswegen werden die einzelnen Schritte in diesem Post nur noch im Schnelldurchlauf angeführt:

  1. „MariaDB 10“ als Paket im Paketzentrum der Synology DS installieren – stellt die Datenbank-Instanz dar.
  2. „phpMyAdmin“ als Paket im Paketzentrum der Synology DS installieren – gibt uns die Möglichkeit, die Datenbank über eine übersichtliche GUI zu verwalten.
  3. phpMyAdmin Webinterface öffnen und einen neuen Benutzer „openhab“ anlegen.
  4. Checkbox „Erstelle eine Datenbank mit gleichem Namen und gewähre alle Rechte.“ anhaken und Benutzer erstellen.

 

openHAB Persistence Plugin installieren

Die Installation von Plugins über openHAB geht über die das „Paper UI“ relativ schmerzlos von der Hand. Dazu muss einfach der „Persistence“ Reiter unter „Add-ons“ aufgerufen und nach dem Schlagwort „MariaDB“ gesucht werden. Mit einem Klick auf „INSTALL“ wird das Plugin automatisch installiert. Sollte es auch nach mehreren Minuten im Installationsprozess festhängen, könnte ein Refresh des Browser-Tabs oder ein Restart von openHAB helfen. Wenn auch das nicht hilft, kann im Log relativ genau die Ursache ausgelesen werden.

 

 

JDBC Persistence MariaDB konfigurieren

Sobald das Plugin installiert ist, muss abschließend noch die Konfiguration der jdbc.cfg vorgenommen werden. Dazu kann einfach nachfolgende Datei kopiert und in den Texteditor deiner Wahl eingefügt werden.

############################ JDBC Persistence Service ##################################
# D A T A B A S E  C O N F I G
url=jdbc:mariadb://192.168.1.10:3307/openhab
# url=jdbc:mysql://192.168.0.1:3306/testMysql
# url=jdbc:postgresql://192.168.0.1:5432/testPostgresql

# required database user
user=openhab

# required database password
password=SUPERSAFEPA$$WORD
#######################################################################################

Grundsätzlich müssen nur die drei Zeilen ohne Raute angepasst werden:

  • url: IP der Synology NAS mit dem Port 3307 (Standardport für MariaDB) + Datenbankname
  • user: Benutzername des zuvor erstellten DB-Users
  • password: Password des zuvor erstellten DB-Users

Abschließend soll die Datei noch als „jdbc.cfg“ im openHAB-Pfad „/conf/services/“ abgespeichert werden. Damit man sicherstellen kann, dass die Verbindung mit der SQL-Datenbank ohne Fehler hergestellt worden ist, sollte man noch einen Blick in das openHAB-Log unter „/userdata/logs/openhab.log“ werfen. Bekommt man dort keine Fehlermeldung ausgegeben, sondern folgenden Eintrag, wurde die Verbindung erfolgreich hergestellt:

[INFO ] [persistence.jdbc.internal.JdbcMapper] - JDBC::openConnection: Driver is available::Yank setupDataSource

Somit ist der Grundstein gelegt, um zukünftig Items als Tabelle in der Datenbank anzulegen (siehe: openHAB 2: Items persistent in MariaDB speichern).

Das könnte Dich auch interessieren …

Abonnieren
Benachrichtige mich bei
guest
2 Comments
Älteste
Neuste Meist bewertet
Inline Feedbacks
View all comments
Olaf Maaß
Olaf Maaß
6 Monate zuvor

Vielen Dank für die super Erklärung MariDB ==> openHAB.
Wie kann ich den nun ITEMS in die Datenbank ablegen?

2
0
Hinterlass' doch deine Meinung zu diesem Artikelx
()
x