MariaDB und OpenHAB2 - keine Tabellen, o.ä. angelegt

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

FelixK
Beiträge: 103
Registriert: 16. Mai 2018 06:56
Answers: 0

MariaDB und OpenHAB2 - keine Tabellen, o.ä. angelegt

Beitrag von FelixK »

Hallo,

ich habe diesem Tutorial folgend MariaDB (anstelle von MySql) installiert.

https://community.openhab.org/t/openhab ... p/15829/10

Demnach sollte jedes Item bei jeder Änderung persistiert werden. Bei mir ist die OpenHAB-Datenbank (auf Groß-/Kleinschreibung habe ich geachtet) aber leer. Habt ihr eine Idee, woran das liegen könnte? Das "everyChange" sollte doch rein den Zustand der Items betrachten und es sollte doch egal sein, wie die Info in OpenHAB kommt - wie z.B. in meinem Fall über Mqtt states.

Mein Datenbank-Benutzer ist korrekt, das Passwort auch und mit diesem Benutzer kann ich über PhpMyAdmin Tabellen anlegen und Einträge erstellen. Berechtigungsmäßig sollte also auch alles passen.
Viele Grüße

Felix

Benutzeravatar
udo1toni
Beiträge: 15244
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: MariaDB und OpenHAB2 - keine Tabellen, o.ä. angelegt

Beitrag von udo1toni »

Ohne sämtliche Konfigurationen kann man nur in eine Glaskugel schauen...
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

FelixK
Beiträge: 103
Registriert: 16. Mai 2018 06:56
Answers: 0

Re: MariaDB und OpenHAB2 - keine Tabellen, o.ä. angelegt

Beitrag von FelixK »

Hallo udo1toni,

folgendes habe ich gemacht:

- Installation Maria DB
- Installation PhpMyAdmin
- Anlegen eines DB-Benutzers openhab
- Anlegen einer Datenbank OpenHAB und Berechtigungen dafür dem Benutzer openhab gegeben
- /etc/openhab2/services/mysql.cfg angepasst

Code: Alles auswählen

# the database url like 'jdbc:mysql://<host>:<port>/<database>' (without quotes)
url=jdbc:mysql://127.0.0.1:3306/OpenHAB

# the database user
user=openhab

# the database password
password=****************** <- hier steht das Passwort
- Persistenz-Datei unter /etc/openhab2/persistence/mysql.persist angelegt:

Code: Alles auswählen

// persistence strategies have a name and a definition and are referred to in the "Items" section
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
}

/*
 * Each line in this section defines for which item(s) which strategy(ies) should be applied.
 * You can list single items, use "*" for all items or "groupitem*" for all members of a group
 * item (excl. the group item itself).
 */

Items {
    // persist all items once a day and on every change and restore them from the db at startup
    * : strategy = everyChange, everyDay, restoreOnStartup

    // additionally, persist all temperature and weather values every hour
       gTemperatur* : strategy = every5Minutes, restoreOnStartup
}
-> das habe ich erstmal 1:1 so aus der Anleitung übernommen

Das war's dann auch schon. Mehrfach neu gestartet habe ich in der Zwischenzeit auch, wie gesagt, getestet, dass ich über PhpMyAdmin eine Tabelle und einen Eintrag darin in der OpenHAB-DB anlegen kann. Das hat geklappt.
Viele Grüße

Felix

Benutzeravatar
udo1toni
Beiträge: 15244
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: MariaDB und OpenHAB2 - keine Tabellen, o.ä. angelegt

Beitrag von udo1toni »

Und den Persistence Service hast Du auch installiert?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Caddy
Beiträge: 117
Registriert: 16. Nov 2018 08:21
Answers: 0

Re: MariaDB und OpenHAB2 - keine Tabellen, o.ä. angelegt

Beitrag von Caddy »

MariaDB 10 geht nicht ....

evtl hast du die installiert


wenn ja umstellen auf 5 dann geht es ...

so war es zumindest bei mir .....


Caddy

FelixK
Beiträge: 103
Registriert: 16. Mai 2018 06:56
Answers: 0

Re: MariaDB und OpenHAB2 - keine Tabellen, o.ä. angelegt

Beitrag von FelixK »

Hallo ihr beiden,

vielen Dank für eure Antworten. Ich hatte sowohl "JDBC Persistence MariaDB", als auch "JDBC Persistence MysqlDB" nacheinander ausprobiert.

Auf Caddys Beitrag hin habe ich versucht MariaDB zu de- und MySql zu installieren.

Die Deinstallation wollte ich mit folgenden Befehlen durchführen:

Code: Alles auswählen

sudo service mysql stop
sudo apt-get --purge remove "mysql*"
sudo rm -rf /etc/mysql/
Über

Code: Alles auswählen

locate mysql
bzw.

Code: Alles auswählen

sudo updatedb
wurde nichts mehr gefunden. Wenn ich dann PhpMyAdmin aufrufe und mich einlogge, dann sehe ich aber weiterhin folgendes:

Code: Alles auswählen

Server: Localhost via UNIX socket
Server type: MariaDB
Server version: 10.1.37-MariaDB-0+deb9u1 - Raspbian 9.0
Protocol version: 10
User: openhab@localhost
Server charset: UTF-8 Unicode (utf8)
Ich habe es versucht über mehrere Varianten, die ich gegoogled habe, wie man unter Debian MariaDB deinstalliert, zu deinstallieren und jedes Mal versucht MySql neu installiert. (apt-get install mysql-server). Es wird aber immer wieder MariaDB installiert.

Persistiert wird aber leider auch nichts. Muss ich noch Tabellen anlegen oder den Persistence Service noch anderweitig konfigurieren? Über PaperUi könnte ich ja weitere Parameter angeben.
Viele Grüße

Felix

Benutzeravatar
udo1toni
Beiträge: 15244
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: MariaDB und OpenHAB2 - keine Tabellen, o.ä. angelegt

Beitrag von udo1toni »

Das ist das Problem. jdbc ist jdbc, nicht MySQL.

Die Konfiguration für jdbc gehört in die jdbc.cfg, nicht in die mysql.cfg
Die Persistence für jdbc muss mit jdbc.persist erstellt werden, nicht mit mysql.persist.

Es gibt auch eine mysql Persistence, für die sind die gleichnamigen Dateien. jdbc ist aber die bessere, weil genauer konfigurierbare Variante.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

FelixK
Beiträge: 103
Registriert: 16. Mai 2018 06:56
Answers: 0

Re: MariaDB und OpenHAB2 - keine Tabellen, o.ä. angelegt

Beitrag von FelixK »

Guten Morgen udo1toni,

oh man! Nachdem ich beide Dateien in die von dir genannten Namen umbenannt habe klappt es nun auch mit MariaDB 10. Ich habe aktuell noch den JDBC Persistence MySql installiert. Macht es Sinn den MariaDB Persistence Service stattdessen zu verwenden, um die MariaDB-Vorteile nutzen zu können oder ist das bei dem Anwendungsfall eher egal?

Ich wünsche dir einen schönen Sonntag!
Viele Grüße

Felix

Benutzeravatar
udo1toni
Beiträge: 15244
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: MariaDB und OpenHAB2 - keine Tabellen, o.ä. angelegt

Beitrag von udo1toni »

Ich habe bei mir keine Unterschiede zwischen den beiden Zugriffsarten feststellen können, ich hab mich aber auch nicht weiter damit beschäftigt.
Allerdings muss man aufpassen mit dem umbenennen in jdbc.cfg, dort werden andere Parameter verwendet als in der mysql.cfg.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

FelixK
Beiträge: 103
Registriert: 16. Mai 2018 06:56
Answers: 0

Re: MariaDB und OpenHAB2 - keine Tabellen, o.ä. angelegt

Beitrag von FelixK »

Guten Morgen udo1toni,

Danke für die Rückmeldung. Dann werde ich mir die einzelnen Paramterer nochmal anschauen, wenn ich daheim bin. Zumindest bis gestern Abend wurden die Einträge geloggt. Bei mir ging die Umbenennerei wohl deshalb problemlos, da ich nur die Basis-Konfiguration mit dem Zugriff auf die DB verwende.
Viele Grüße

Felix

Antworten