openHAB 3: JDBC Persistence MariaDB (MySQL) installieren

Hinweis: Wir haben in diesem Artikel möglicherweise Provisions-Links verwendet und sie durch (*) gekennzeichnet. Erfolgt über diese Links eine Bestellung, erhält maffert.net eine Provision. Es entstehen für Sie keine Nachteile beim Kauf oder Preis.

Um in openHAB Daten „dauerhaft“ zu speichern, um z.B. Auswertungen zu fahren bzw. Diagramme anzeigen zu lassen, benötigt man das JDBC Persistence Addon. Ich empfehle die Variante MySQL /MariaDB, hier ist man deutlich flexibler. Ich zeige euch hier die Installation.

MySQL/MariaDB installieren und danach Autostart aktivieren:
sudo apt-get install mariadb-server
sudo systemctl start mariadb-server
sudo systemctl enable mariadb-server
Datenbank und Benutzer anlegen:
sudo mysql -u root
CREATE DATABASE OpenHAB;
CREATE USER 'openhab'@'localhost' IDENTIFIED BY 'geheimesPasswort';
GRANT ALL PRIVILEGES ON OpenHAB.* TO 'openhab'@'localhost';
exit;
Add-on installieren und konfigurieren:
Add-on installieren:
Einstellungen > Other Add-ons > rechts unten auf "Search" > JDBC Persistence MariaDB > Install

Persistence als Standard festlegen:
Einstellungen > unter System Services > Persistence > JDBC auswählen und oben rechts auf "Save"
Konfigurationsdatei „jdbc.cfg“ anpassen/erstellen:
nano /etc/openhab/services/jdbc.cfg

url=jdbc:mariadb://127.0.0.1:3306/OpenHAB?serverTimezone=Europe/Berlin
# required database user
user=openhab

# required database password
password=geheimesPasswort
Konfigurationsdatei „jdbc.persist“ anpassen/erstellen und unten die items definieren:
nano /etc/openhab/persistence/jdbc.persist

Strategies {
    // if no strategy is specified for an item entry below, the default list will be used
    everyMinute : "0 * * * * ?"
    every5Minutes : "0 */5 * * * ?"
    everyHour   : "0 0 * * * ?"
    everyDay    : "0 0 0 * * ?"
    default = everyChange
}

Items {
    Persistent* : strategy = everyChange, restoreOnStartup
    DIV_Wetter_AktTemp : strategy = everyMinute, restoreOnStartup
}

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert