Aus irgendeinem Grund ist in der Konfigurationssoftware von openhaspian kein mysql vorgesehen. Von daher installieren wir es selbst.
Schritt 1: mySQL installieren
mit einem
sudo apt-get install mysql-server
Nach der Installation wird noch ein Passwort vergeben für den mysql user "root".
Schritt 2: Datenbank anlegen
Nachdem die Installation abgeschlossen ist versuchen wir einmal uns mit dem Datenbankmanagementsystem zu verbinden.
mysql -uroot -p
und können mit status;
den aktuellen Status anzeigen.
Nun noch eine dedizierte Datenbank für openHAB erstellen:
create database openhab;
Da es sicherheitstechnisch nicht zu empfehlen ist mit dem verwendeten root-User auf die Datenbank zuzugreifen erstellen wir hierfür einen separaten login.
create user 'openhab'@'localhost' identified by 'password';
und geben dem neu erstellten User auch die erforderlichen Rechte für diese Datenbank.
Grant all privileges on openhab.* to 'openhab'@'localhost';
und verlassen dan mySQL-prompt mit quit;
Schritt 3: openHAB auf mySQL konfigurieren
Nun sollten wir die Konfiguration für openHAB auf mySQL vorbereiten.
Hierfür in der Datei "mysql.cfg" aus dem Bereich Services folgendes eintragen:
# the database url like 'jdbc:mysql://:/' (without quotes)
url=jdbc:mysql://127.0.0.1:3306/openhab # the database user
user=openhab # the database password
password=password
Nun noch die Persistenz-Datei (zb. "mysql.persist") im Ordner Persistence der openHAB-Konfiguration erstellen und bearbeiten.
Strategies {
// Ist keine Strategie für ein Item angegeben, wird default verwendet
everyMinute : "0 * * * * ?"
every5Minutes : "0 */5 * * * ?"
everyHour : "0 0 * * * ?"
everyDay : "0 0 0 * * ?"
default = everyChange
}
/*
* Jede Zeile definiert für welche Items welche Strategie verwendet werden soll
* Es können einzelne Items, "*" oder Gruppen für die jeweiligen Einzelwerte verwendet werden
*/
Items {
// speichern aller Zustände einmal am Tag/bei Zustandsänderung und lesen beim Start aus der Datenbank
* : strategy = everyChange, everyDay, restoreOnStartup
// additionally, persist all temperature and weather values every hour
// Temperartursensoren stündlich erfassen
gTemperatur* : strategy = everyHour, restoreOnStartup
}
Nun kann noch einmal zur Sicherheit geprüft werden ob nach dem Speichern der Konfigurationen Fehler aufliefen. Hierfür das Log(http://openhabianpi:9001/) aufrufen.