MySQL für ioBroker installieren

von Admin


erstellt am 27. Juni 2019 - Lesezeit: 4 Minuten
Cover Image

MySQL ist eine gut Lösung um in ioBroker historische Daten zu speichern.

So kann zum Beispiel der Temperaturverlauf von verschiedenen Zimmern über große Zeiträume aufgezeichnet und grafisch visualisiert werden. Oder der Zeitpunkt wenn ein Gerät ein- und ausgeschalten wurde. 

Voraussetzung

Falls noch nicht geschehen sollte noch die ioBroker Installation durchgeführt werden.

1. Updaten der Pakete 

Zuerst updaten wir alle Pakete: 

sudo apt-get update && sudo apt-get upgrade

2. MySQL-Server und MySQL-Client installieren

sudo apt-get install mariadb-server mariadb-client

3. MySQl konfigurieren

Zuerst mit dem Root-Passwort des Raspberry Pi einloggen:

sudo mysql -u root -p

Dann das Datenbank Root-Passwort vergeben, zum Beispiel: 12345678

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '12345678';

Das Passwort solltet ihr euch aufschreiben oder merken, verwendet nicht das aus dem Beispiel!

Berechtigungen erteilen:

GRANT USAGE ON *.* TO 'root'@'%' WITH GRANT OPTION;

MySQL Datenbank für ioBroker erstellen:

CREATE DATABASE `iobroker`;

MySQL Benutzername und Datenbank Passwort erstellen, zum Beispiel: 87654321:

CREATE USER 'iobroker'@'%' IDENTIFIED BY '87654321';

Das Passwort solltet ihr euch aufschreiben oder merken, es sollte sich von dem Datenbank Root-Passwort unterscheiden. Verwendet auch nicht das aus dem Beispiel!

MySQL Benutzer zur Sicherheit nur eingeschränkten Zugriff erlauben:

GRANT ALL PRIVILEGES ON `iobroker`.* TO 'iobroker'@'%';

Abschließen der Konfiguration:

FLUSH PRIVILEGES;

exit

Neustarten von MySQL:

sudo service mysql restart

4. MySQL-Adapter in ioBroker einrichten

Falls noch nicht geschehen muss noch der Adapter SQL-Protokollierung in ioBroker installiert werden.

Konfiguration des ioBroker Adpaters:

ioBroker MySQL

Abschließend klicken wir noch auf Verbindung testen

Wenn alles  funktioniert sollte ein OK erscheinen

Jetzt klicken wir noch auf Speichern und Schliessen

5. Troubleshooting

Falls es irgendwann ein Problem mit MySQL gibt und sich MySQL nicht mehr starten lässt, kann eine Neuinstallation ratsam sein. 

Achtung, dabei werden alle MySQl Datenbanken gelöscht!

Am besten ihr habt noch ein MySQL Backup und könnt diese nach der Installation wieder einspielen. 

Alle MySQL Pakete löschen: 

sudo apt-get remove --purge mariadb-server mariadb-client mysql-common -y

sudo apt-get autoremove -y

sudo apt-get autoclean

Entfernen des MySQL Ordners:

rm -rf /etc/mysql

Löschen aller MySQL Ordner:

sudo find / -iname 'mysql*' -exec rm -rf {} \;


Hinterlasse einen Kommentar:

sgnoe
sgnoe
16. November 2020
Hallo, habe das ganze nicht zum Laufen bekommen. Die Datenbank hat zwar soweit funktioniert und ich konnte auch von Extern darauf zugreifen (nach einer kleinen Konfigurationsänderung), aber iobroker wollte sich nicht koppeln. Einmal npm i iobroker.sql im iobroker Verzeichnis /opt/iobroker löste das Problem. Vlt. hilft das noch jemandem, ich habe 1,5h gesucht, bis ich das gefunden habe... Danke für die Anleitung!
Admin
Admin
19. November 2020
Danke für Deine Rückmeldung!
Suche