Ankündigung

Einklappen
Keine Ankündigung bisher.

Neues Database Plugin

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Onkelandy
    antwortet
    Aufm Image ist eh schon alles vorbereitet mit der Datenbank. Man muss das Service nur noch enablen und sich daran halten: https://sourceforge.net/p/smarthomen...ge/wiki/mysql/

    psilo welches knxd docker image nutzt du? Ich hatte letztens sowohl mit dem von henfri als auch foxi massive Probleme. Müsst's mir nochmals anschauen, da ich es definitiv irgendwann mal funktionsfähig am Laufen hatte.

    Einen Kommentar schreiben:


  • psilo
    antwortet
    sonst testweise die db halt auch erstmal auf dem pi installieren?

    Einen Kommentar schreiben:


  • Tom Bombadil
    antwortet
    Zitat von psilo Beitrag anzeigen
    aber es macht keinen sinn, die DB auf das NAS zu legen SHNG aber dann als single instanz woanders zu hosten.
    Wie gesagt - ich hatte erst alles auf dem Pi, der über UBS-RS485 mit der KWL verbunden war. Dann aus Performancegründen die Visu und dB auf das QNAP NAS umgezogen (was in meinen Augen eine valide Konfiguration darstellt). Erst kürzlich, mit der Einführung des RS485-LAN-Konverters, ist auch shNG auf das NAS umgezogen, vorher ging's halt technisch nicht (NAS steht räumlich woanders als die über USB mit dem Pi verbundene KWL).

    /tom

    Einen Kommentar schreiben:


  • Haiphong
    antwortet
    Servus René,
    zur Frage warum SHNG auf Raspi und mySQL auf NAS:

    a) Wenn Ihr – vom Wissen – in der Bundesliga spielt, bin ich in der C-Kasse
    ( ohne Raspi-Image wäre ich nie zu SH / KNX gekommen )
    Es ist für mich die einzig vertretbare Art bei Eurem Verbesserungen mitmachen zu können. ( Hab von GIT keine Ahnung )
    b) Mein NAS - QNAP TS-459 - ist alt und da soll Docker – mangels Arbeitsspeicher, 1GB - nicht laufen.
    ( ist für mich zur Zeit auch besser so ….. )
    c) Ohne Andys Raspi-Image würde ich vermutlich auch nicht von SH zu SHNG wechseln.

    Danke für Eure Unterstützung….

    Alles weiter kann ich erst am WE machen / beantworten.

    Einen Kommentar schreiben:


  • psilo
    antwortet
    smai den stick kannste auch ans nas anstecken, sofern das im technikraum steht
    Tom Bombadil
    Es werden Daten für Geräte aufgezeichnet, in deren Nähe kein Bus / Netzwerk existiert
    -> auch dann kann ich per wifi die daten zu einer zentralen shng instanz auf dem nas synchen. ich habe auch 2 verteilte shng's, die aber alle die daten zum SHNG auf dem NAS senden. und das schreibt dann in die DB weg (wenn Haiphong kein netzwerk hätte, käme er auch nicht auf die datenbank die ja bei ihm auf dem NAS liegt!).
    daher stimme ich 2 auch zu, weil ich das selber ja identisch nutze, aber es macht keinen sinn, die DB auf das NAS zu legen SHNG aber dann als single instanz woanders zu hosten.
    Zuletzt geändert von psilo; 25.01.2019, 10:30.

    Einen Kommentar schreiben:


  • smai
    antwortet
    Zitat von Haiphong Beitrag anzeigen
    Diese Berechtigungen reichen:
    rechte.jpg
    Die Rechte "FILE" und in der zweiten Spalte alles ab "CREATE TEMPORARY TABLE" werden ziemlich sicher nicht benötigt.


    Zitat von psilo Beitrag anzeigen
    welchen sinn macht es, shng auf einen raspi auszulagern, wenn du ein leistungsstaerkeres NAS hast, auf dem sowieso die DB läuft
    Bei mir hat der RasPi direkt einen USB-KNX-Stick, so dass SHNG weiterhin funktioniert, auch wenn das Netzwerk ausfällt.

    Einen Kommentar schreiben:


  • Tom Bombadil
    antwortet
    Zitat von psilo Beitrag anzeigen
    trotzdem eine relevante frage:
    welchen sinn macht es, shng auf einen raspi auszulagern, wenn du ein leistungsstaerkeres NAS hast, auf dem sowieso die DB läuft
    Spontan: Solange im gesamten Haus ein Bus installiert ist und alle Geräte irgendwie da dran hängen, sollte es möglich sein, die Daten an einem beliebigen Ort direkt an shNG auf dem NAS zu geben. Ansonsten:
    1) Es werden Daten für Geräte aufgezeichnet, in deren Nähe kein Bus / Netzwerk existiert (mein shNG-Raspi hing lange neben der KWL im Technikraum, bis ich den RS485 USB-Stick gegen einen RS485-LAN-Konverter ersetzt habe; von da an hatte ich die KWL-Daten im LAN und konnte shNG auf das NAS in einem anderen Raum umziehen, statt es auf dem Raspi direkt an der KWL zu betreiben).
    2) Bei mehreren Installationen von shNG, die sich gegenseitig synchronisieren (Sandman60 hat sowas z.B., wenn ich mich richtig erinnere).

    /tom

    Einen Kommentar schreiben:


  • psilo
    antwortet
    Haiphong nach dem pip update nochmal pymysql updaten? 0.9.3 ist aber die aktuellste.. du hast dann pymysql aber doch verfügbar? vorher in #203 sagst du, das gäbe es nicht und du nimmst y26-mysql (was ich nicht kenne)?

    Frage zu "bind-address" in "/etc/mysql/my.cnf":
    was genau ist die frage? in diesser datei sollte eine sektion namens [mysqld] sein. Auf NAS'sen musst Du acht geben, weil da oft die DB für die eigene Oberfläche mitgenutzt wird.. da sind dann spezielle konfigurationen drin oder das zeug ist in includete weitere konfigdateien ausgelagert... bei synology versuche ich da auch möglichst wenig selber rumzueditieren.. dann lieber die DB sauber in nen docker container.

    auf meiner synology musste ich allerdings auch nichts anpassen, weil mein shng im docker läuft und ich daher "nativ" und nicht von aussen auf die synology datenbank konnte. meine anleitung im blog bezieht sich auf einen "normalen" raspi.. qnap kenne ich nicht

    trotzdem eine relevante frage:
    welchen sinn macht es, shng auf einen raspi auszulagern, wenn du ein leistungsstaerkeres NAS hast, auf dem sowieso die DB läuft
    Zuletzt geändert von psilo; 25.01.2019, 06:14.

    Einen Kommentar schreiben:


  • Haiphong
    antwortet
    Rückmeldung
    a) Es kommen - ohne Änderung von mir - keine Rechte Probleme mehr im Logging
    b) Es werden Werte geschrieben
    c) Diese Berechtigungen reichen:
    rechte.jpg

    Item Beispiel:
    ( ob "init" in Hochkomma steht ist offensichtlich egal )
    Code:
    %YAML 1.1
    ---
    
    bluetooth:
        pflanzen:
            sensor_i_a:
                temp:
                    name: temp
                    type: num
                    database@mysqldb: 'init'
                    xiaomi_data_type@sensor_a: temperature
                    send_nw_udp: 1
    Lt. Blog
    sudo pip3 install --upgrade pymysql
    ergibt: ( aktuelles Raspi Image von Andy )
    upgrade mysql.jpg
    sudo pip install --upgrade pip
    ergibt:
    pip inst.jpg

    Frage zu "bind-address" in "/etc/mysql/my.cnf":
    Da bei mir mySQL auf NAS QNAP und SHNG auf Raspi
    Die Datei beinhaltet bisher folgendes:
    Code:
    [client-server]
    # Import all .cnf files from configuration directory
    !includedir /etc/mysql/conf.d/
    !includedir /etc/mysql/mariadb.conf.d/
    Hier füge ich folgenden Eintrag hinzu:
    Code:
    [mysqld]
    bind-address = 192.168.178.44
    hinzu
    Zuletzt geändert von Haiphong; 25.01.2019, 00:03.

    Einen Kommentar schreiben:


  • Haiphong
    antwortet
    Hallo Kollegen,

    danke für Eure Unterstützung......

    Komme erst morgen wieder an das System....

    Nur zur Info,
    a) zuerst kam die Fehlermeldung - Post # 206 - mit der Anmeldung ( min. 1 Seite lang )
    b) dann wurden - automatisch - die drei Tabellen in der DB "Smarthome" erstellt
    c) ob jetzt noch Fehlermeldungen kommen werde ich prüfen

    René,
    Deinen Blog zu dem Thema hab ich wohl gelesen, aber gestern nicht mehr auf dem Schirm gehabt. ( also auch nicht befolgt )
    Werde ich aber nachholen....

    Einen Kommentar schreiben:


  • smai
    antwortet
    Zitat von Onkelandy Beitrag anzeigen
    Dass offenbar ein Mal in die Datenbank geschrieben wurde und dann nicht mehr,
    Stimmt, das hatte ich übersehen.

    Haiphong noch ein Wort zum "instance":
    Dies hat nichts mit DB zu tun, sondern ist die Plugin-Instanz. Falls du Multiinstance nutzen willst (und weisst wie und was du tust) ist das in Ordnung. Wenn aber alle DB-Items in dieselbe DB sollen, lässt du es besser weg.

    Einen Kommentar schreiben:


  • Onkelandy
    antwortet
    Die Angaben im plugin.yaml passen so wie oben gepostet, läuft bei mir mit quasi gleicher Config.
    Dass offenbar ein Mal in die Datenbank geschrieben wurde und dann nicht mehr, ist schon sehr sonderbar. Aber es muss letztlich fast ein Rechteproblem sein.
    Würde in phpmyadmin mal auf die Rechte der Datenbank gehen und wie smai vorgeschlagen hatte "ALL PRIVILEGES" granten.

    Einen Kommentar schreiben:


  • smai
    antwortet
    Meines Wissens passt die Liste schon so wie sie ist.
    In database/__init__.py wird Utils.string_to_list verwendet, und da hast du selbst implementiert, dass eine Liste direkt wieder als Liste zurückkommt.

    Entscheidend ist aber, dass es eine Liste von Strings ist und nach den Doppelpunkten kein Leerzeichen stehen darf.
    Sonst wird es in YAML als eine Liste von dicts interpretiert. Aber auch Anführungszeichen helfen nicht, weil in lib/db.py ein Partition nach   :  ohne Trim geschieht.

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Ich meine das Problem hatte schon jemand hier im Forum.

    Wenn ich das richtig erinnere, muss connect ein String sein. So wie es in der Konfiguration steht, ist das aber eine Liste von Strings. Schreib mal die ganzen -Optionen auf eine Zeile und setze sie in Anführungszeichen.

    Einen Kommentar schreiben:


  • smai
    antwortet
    "Access denied for user 'Smarthome'@'SmartHomeNG.fritz.box' (using password: YES)"
    Ist ja wieder ziemlich eindeutig: Der User hat keine rechte auf die Datenbank.
    Schau mal in das Register "Rechte" in phpMyAdmin. Er braucht sicherlich mindestens INSERT, SELECT, DELETE, UPDATE.

    Falls jemand anderes das hier mal liest:
    Wenn man die Datenbankobjekte nicht vorher manuell angelegt hat, würde dies das Plugin tun. Dazu braucht es mindestens noch CREATE.

    Im selbst betreuten Heimnetz kann man aber IMHO auch getrost ALL PRIVILEGES geben.

    Dass das Plugin nach diesem Fehler trotzdem ein Select versucht, ist eigentlich falsch.

    Einen Kommentar schreiben:

Lädt...
X