Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Sql-Adapter und meherer ioBroker Installationen

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    16
    1
    225

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.5k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

Sql-Adapter und meherer ioBroker Installationen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
8 Beiträge 2 Kommentatoren 1.1k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M Offline
    M Offline
    MrLee
    schrieb am zuletzt editiert von
    #1

    Moin!

    Kurze Frage:

    Kann ich von mehreren ioBroker Installationen mittels sql-Adapter die selbe Datenbank verwenden?

    Erzeugt jeder ioBroker dann eigene Daten oder können Datenpunkte die nur die eine Instanz loggt auch von der anderen ausgelesen werden?

    Danke im vorraus

    Mr.Lee

    1 Antwort Letzte Antwort
    0
    • apollon77A Offline
      apollon77A Offline
      apollon77
      schrieb am zuletzt editiert von
      #2

      Hey,

      das sollte bei MySQL und MSSQL kein Problem sein, da der DB-Name pro Instanz angegeben werden kann. Damit kannst Du ach mit einem DB-Server jede Instanz in eine getrennte DB schreiben lassen. Die kommen sich nicht in die quere (also mal mind. bei MySQL und MSSQL). Bei Postgres und SQLite geht das glaube ich nicht so ohne weiteres.

      Sogar das "gegenseitig lesen" müste gehen indem Du eine zweite Instanz anlegst wo Du den anderen DB-namen einträgst und sicherstellst das keine Datenpunkte da rein geloggt werden. Dann könnte getHistory und in jedem Fall query gehen

      Warum eigentlich mehrere Installationen? Multi-Host geht nicht?

      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
      1 Antwort Letzte Antwort
      0
      • M Offline
        M Offline
        MrLee
        schrieb am zuletzt editiert von
        #3

        Moin!

        Danke fürs Feedback.

        Ich wollte eigentlich beide Systeme jeweils in die SELBE Datenbank auf dem selben Server schreiben/lesen lassen.

        Warum…nunja...eigentlich..Spieltrieb.

        Ich habe eine Liv-e und eine Fallback/Test-System die ich zyklisch gleichhalte.

        Per nginx-Frontend-Server kommt man auf das Live-System und im Aufalls-Fall aus Fallback...

        P.S.: Eins der Systeme ist ein MultiHost mit 4 RasPis..

        1 Antwort Letzte Antwort
        0
        • apollon77A Offline
          apollon77A Offline
          apollon77
          schrieb am zuletzt editiert von
          #4

          Wenn Du sicherstellen kannst das das Fallback-System keine Datenpunkte loggt/Daten erhält die vom anderen System auch geschrieben werden, sollte das passen. Dann kommen die sich nicht ins Gehege

          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            MrLee
            schrieb am zuletzt editiert von
            #5

            …ich weiß ich nerve...

            Aber doch: beide sollen identisch sein...eben auch bez. der LogDaten...HotStandby halt...

            1 Antwort Letzte Antwort
            0
            • apollon77A Offline
              apollon77A Offline
              apollon77
              schrieb am zuletzt editiert von
              #6

              Nervst nicht :-) Finde das eher ein sehr interessantes Thema …

              Wenn aber alles aktuell live läuft, dann fallen auch bei beiden die Daten an. Da es zwei getrennte Instanzen sind laufen alle Log-Checks doppelt - ergo du loggst Daten doppelt was ggf zu Duplicate-keys (Timestamp) u.ä, führen müsste (vermutung).

              Hot Standby ist auf der "History-Datenlogging"-Ebene an der stelle schwierig.

              Das Thema geht ja aber weiter: Wenn Du Logik(Skripte, Szenen u.ä.) hast die ausgeführt werden, willst Du ja auch nicht das das doppelt läuft.

              Bedeutet für mich: Das "aktuelle Hot-Standy-Fallback-System" darf gern alle Daten erhalten, aber darf nichts tun. Bedeutet an sich: History-Logging müsste aus sein, alle "Logik-Skripte" u.ä. Adapter müssten auch aus sein. Bist also am Ende eher bei einem "Warm Standby", weil Du im Notfall neben dem "umswitchen" noch Dinge Aktivieren musst ( und im alten System deaktivieren).

              Oder ?!

              Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

              • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
              • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
              1 Antwort Letzte Antwort
              0
              • M Offline
                M Offline
                MrLee
                schrieb am zuletzt editiert von
                #7

                Ok, also im schlimmsten Fall einfach nur Datenverdopplung.

                Könnte der SQL-Adapter nicht vorm schreiben prüfen ob der Wert (Timestamp, Datenpunkt, value) schon da ist?

                Thema Hot/Warm:

                Touché..aber ich habe bis auf Alex (Cloud-Adapter) nix was Logik macht und steuert.

                Meine Gesamte Ablauflogik liegt auf der CCU (yahm). Da habe ich noch ne echte CCU, die ist dann aber cold (IP-Adresse, Funkschnittstelle, Ablauflogik).

                Fange gerade erst an ein wenig mit JScript zu spielen und werde das dann über sync der config und deaktivieren des Adapters auf dem Testsystem lösen…

                Am liebsten wäre mir, wenn bei einer MultiHost-Umgebung mehrere Master existieren könnten.

                Dann hätte man zumindest eine Warm-Standby-Umgebung, sprich man könnte Adapter oder eben auch die Masterfunktion per Admin-Konsole auf einen anderen Host verschieben...

                Aber bis dahin halt zwei Systeme...

                1 Antwort Letzte Antwort
                0
                • apollon77A Offline
                  apollon77A Offline
                  apollon77
                  schrieb am zuletzt editiert von
                  #8

                  @MrLee:

                  Könnte der SQL-Adapter nicht vorm schreiben prüfen ob der Wert (Timestamp, Datenpunkt, value) schon da ist? `
                  Aus Performancegründen würde ich das nicht einbauen wollen …

                  Also ich habe es so gelöst das ich ein Warm-Standby System habe. Für die States nehme ich Redis und da ist auf dem Warm-Standy ein Redis-Slave. Damit sind mal alle State-Daten da. Der Redis ist mit einer Zeile in der Konfig zum Master gemacht.

                  ioBroker-Daten(also das Verzeichnis) an sich wird regelmäßig per rsync auf den Warm-Standby Rechner gesynct der hat HW- und OS-mäßig identisch ist zum Hauptsystem. Da ändert sich aber im Normalfall nur das objects.json. Heisst im Notfall reicht dort ein fixen des Hostnamens in der iobroker-Konfig und der Master läuft wieder. Für die Slaves hab ich nen DNS-Eintrag der auf den Master zeigt mit dem die Verbunden sind (ebenso für Redis). Also mit Ändern des DNS-Eintrags ist es auch gefixt.

                  Sind also ein paar Handgriffe leider, und auch welche die blöd zu automatisieren sind.

                  Die "Multi-Master"-Idee ist schon in einigen Köpfen, aber hier ist meiner Meinung nach ganz wichtig nicht zu wenig zu machen, weil man sonst zu schnell in komische Situationen kommt. Theoretisch müsste man eine Quorum-Logik bauen und das heisst das mindestens 3 Rechner nötig sind um zu sagen ob der aktuelle Master wirklich tod ist und sich auf einen neuen zu einigen falls man das automatisieren will. Das kann alles beliebig komplex werden.

                  Mal schauen.

                  Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                  • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                  • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                  1 Antwort Letzte Antwort
                  0
                  Antworten
                  • In einem neuen Thema antworten
                  Anmelden zum Antworten
                  • Älteste zuerst
                  • Neuste zuerst
                  • Meiste Stimmen


                  Support us

                  ioBroker
                  Community Adapters
                  Donate
                  FAQ Cloud / IOT
                  HowTo: Node.js-Update
                  HowTo: Backup/Restore
                  Downloads
                  BLOG

                  474

                  Online

                  32.7k

                  Benutzer

                  82.5k

                  Themen

                  1.3m

                  Beiträge
                  Community
                  Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                  ioBroker Community 2014-2025
                  logo
                  • Anmelden

                  • Du hast noch kein Konto? Registrieren

                  • Anmelden oder registrieren, um zu suchen
                  • Erster Beitrag
                    Letzter Beitrag
                  0
                  • Home
                  • Aktuell
                  • Tags
                  • Ungelesen 0
                  • Kategorien
                  • Unreplied
                  • Beliebt
                  • GitHub
                  • Docu
                  • Hilfe