Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst] backitup und influxdbv2

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] backitup und influxdbv2

    This topic has been deleted. Only users with topic management privileges can see it.
    • Marc Berg
      Marc Berg Most Active @manrum1 last edited by Marc Berg

      @manrum1 sagte in [gelöst] backitup und influxdbv2:

      Frage1: Geht das?

      Dass du mit den alten Daten eine übergreifende Query basteln willst, hattest du nicht erwähnt. 🙂

      Um allen Problemen aus dem Weg zu gehen, würde ich die Org. "Homebase" wieder löschen und stattdessen den Restore in die bestehende Organisation ausführen. Das geht aber nur über die Kommandozeile. Backitup ist dafür nicht geeignet.
      Du musst dafür das Flag "--new-org" benutzen. Im Detail ist dies hier erklärt:

      https://docs.influxdata.com/influxdb/v2/reference/cli/influx/restore/

      Das Backitup-Backup-File muss entpackt werden.

      Edit:
      Das müsste dann wahrscheinlich so aussehen:

      influx restore --bucket iobold --new-bucket <hier könnte ein neuer Bucketname rein> --new-org <Name der bestehenden Org> --org <Name der bestehenden Org> --token <Token ID> <Pfad zum entpackten Backup-File>
      
      M 1 Reply Last reply Reply Quote 0
      • M
        manrum1 @Marc Berg last edited by

        @marc-berg Danke für die prompte Hilfe!

        Ich kann das Bucket iobold in die neue Org restoren, allerdings sehe ich keine Daten. Das Kommando musste ich dafür wie folgt anpassen:

        influx restore --bucket iobold --org <Name der alten Org> --new-bucket <hier könnte ein neuer Bucketname rein> --new-org <Name der bestehenden Org>  --token <Token ID der neuen ORg> <Pfad zum entpackten Backup-File>
        

        Soweit klappte das dann auch:

         influx restore --bucket iobold  --org Homebase --new-bucket iobold --new-org home --token xxx /opt/iobroker/backups/tmp                                                                                 /
        2023/10/18 11:12:35 INFO: Restoring bucket "5d5a5dbc9205129a" as "iobold"
        2023/10/18 11:12:41 INFO: Restoring TSM snapshot for shard 585
        2023/10/18 11:12:41 INFO: Restoring TSM snapshot for shard 586
        hier folgen weitere...
        

        Leider sehe ich im Influx Data Explorer zwar das bucket iobold aber keine Daten dazu:
        i1.png

        Marc Berg 1 Reply Last reply Reply Quote 0
        • Marc Berg
          Marc Berg Most Active @manrum1 last edited by

          @manrum1

          Ich habe das Ganze noch nicht selbst durchgespielt, aber so wie ich das verstehe, muss sowohl "--org" als auch "--new-org" auf "home" lauten.

          Mit "org" gibst du an, an welcher Organisation sich der restore-Befehl mit dem Token anmelden soll und mit "new-org" wird mitgegeben, dass die Org. aus dem Backup mit dem dort angegebenen Wert überschrieben wird.

          M 1 Reply Last reply Reply Quote 0
          • M
            manrum1 @Marc Berg last edited by manrum1

            @marc-berg Ja, hatte ich probiert und das Kommando so wie du es angeben hast ausgeführt, aber dann passiert leider gar nichts (keinerlei Meldung/Fehlermeldung). Habs aus dem Help so verstanden wie ich angepasst habe.

            
            pi@iob1:/opt/iobroker/backups/tmp $ influx restore --help
            NAME:
                restore - Restores a backup directory to InfluxDB
            
            USAGE:
                restore [command options] path
            
            DESCRIPTION:
               Restore influxdb.
            
            Examples:
              # backup all data
              influx restore /path/to/restore
            
            
            COMMON OPTIONS:
               --host value                     HTTP address of InfluxDB [$INFLUX_HOST]
               --skip-verify                    Skip TLS certificate chain and host name verification [$INFLUX_SKIP_VERIFY]
               --configs-path value             Path to the influx CLI configurations [$INFLUX_CONFIGS_PATH]
               --active-config value, -c value  Config name to use for command [$INFLUX_ACTIVE_CONFIG]
               --http-debug
               --token value, -t value          Token to authenticate request [$INFLUX_TOKEN]
            
            OPTIONS:
               --full                    Fully restore and replace all data on server
               --org-id value            The original ID of the organization to restore [$INFLUX_ORG_ID]
               --org value, -o value     The original name of the organization to restore [$INFLUX_ORG]
               --bucket-id value         The original ID of the bucket to restore
               --bucket value, -b value  The original name of the bucket to restore
               --new-bucket value        New name to use for the restored bucket
               --new-org value           New name to use for the restored organization
            
            

            Mein entpacktes Directory schaut so aus (enpackt mit tar - xvcf:
            i2.png

            Marc Berg 1 Reply Last reply Reply Quote 0
            • Marc Berg
              Marc Berg Most Active @manrum1 last edited by

              @manrum1 sagte in [gelöst] backitup und influxdbv2:

              Habs aus dem Help so verstanden wie ich angepasst habe.

              Ja, stimmt schon, wie du es gemacht hast. So sollte es eigentlich funktionieren. Da gehen mir jetzt die Ideen aus, außer: hast du dich mal an der InfluxDB Gui neu angemeldet? Manchmal zieht die Gui sich erst dann die Measurements.

              Ansonsten gibt es immer noch den Weg über Export und Import, so wie ich ihn hier beschrieben habe (natürlich nur den V2 Teil):

              https://forum.iobroker.net/post/1030402

              M 1 Reply Last reply Reply Quote 0
              • M
                manrum1 @Marc Berg last edited by

                @marc-berg Danke noch mal.
                Was mir noch einfällt: Muss ich influx vor dem restore stoppen?

                Marc Berg 1 Reply Last reply Reply Quote 0
                • Marc Berg
                  Marc Berg Most Active @manrum1 last edited by

                  @manrum1 sagte in [gelöst] backitup und influxdbv2:

                  Muss ich influx vor dem restore stoppen?

                  Nein.

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    manrum1 @Marc Berg last edited by

                    @marc-berg Neue Erkenntnisse: Das restore hat im Prinzip geklappt, warum er im Influx Data Explorer keine mearurements anzeigt bleibt ein Rätsel. Jedenfalls gehts über Grafana, wenn ich dafür eine eigene Datasource anlege. Da Grafana auch mehrere Datenbanken erlaubt muss ich noch rausfinden wie das geht.

                    Danke jedenfalls noch mal 👍 😊

                    Marc Berg 1 Reply Last reply Reply Quote 0
                    • Marc Berg
                      Marc Berg Most Active @manrum1 last edited by

                      @manrum1 sagte in [gelöst] backitup und influxdbv2:

                      warum er im Influx Data Explorer keine mearurements anzeigt bleibt ein Rätsel.

                      @marc-berg sagte in [gelöst] backitup und influxdbv2:

                      hast du dich mal an der InfluxDB Gui neu angemeldet?

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        manrum1 @Marc Berg last edited by

                        @marc-berg ja, habe ich😊

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          manrum1 @manrum1 last edited by

                          @manrum1 Hallo, Marc, habe heute meinen iobroker ganz normal upgedated, es wurde nur der js-controller auf neuesten Stand (5.0.17) gebracht. Nun habe ich plötzlich "Lücken" in meiner influx Datenbank. Man sieht es sehr gut auf folgendem Screenshot:
                          if1.png
                          Zwischen 26.11. und 12. 4. sind alle Daten weg, kannst Du dir erklären, wie das durch den update passieren kann?

                          Nun wollte ich meinen Backup einspielen, geht aber nicht, da ich folgende Meldung erhalte:

                          Started restore ...
                          [DEBUG] [influxDB] - Created tmp directory
                          [DEBUG] [influxDB] - Start infuxDB Restore ...
                          [DEBUG] [influxDB] - influxdb.0 is stopped
                          [ERROR] [influxDB] - 2023/12/17 13:14:39 INFO: Restoring bucket "8e0e9c529c6510f7" as "iobold"
                          Error: failed to restore bucket "iobold": 422 Unprocessable Entity: bucket with name iobold already exists
                          
                          [DEBUG] [influxDB] - Try deleting the InfluxDB tmp directory
                          [DEBUG] [influxDB] - InfluxDB tmp directory was successfully deleted
                          [DEBUG] [influxDB] - infuxDB Restore completed successfully
                          [EXIT] influxDB restore done
                          [DEBUG] [influxDB] - influxdb.0 started
                          

                          Das hatten wir schon mal, da ich die alte (iobold) DB für Auswertung alter Daten nutze.
                          Meine Frage: Wie kann ich mein restore so reparieren, dass er nur die iobroker-data DB verwendet und bei Bedarf restauriert?

                          Schon mal Danke im Voraus!

                          Marc Berg 1 Reply Last reply Reply Quote 0
                          • Marc Berg
                            Marc Berg Most Active @manrum1 last edited by Marc Berg

                            @manrum1 sagte in [gelöst] backitup und influxdbv2:

                            Zwischen 26.11. und 12. 4. sind alle Daten weg, kannst Du dir erklären, wie das durch den update passieren kann?

                            Ich kann nur mit Sicherheit sagen, dass es nicht direkt durch das Update ausgelöst wurde. Da besteht keinerlei Zusammenhang.
                            Es fehlt exakt eine Woche, wie es aussieht. InfluxDB organisiert seine Daten in so genannten "Shards". Ein Shard ist genau 7 Tage lang, wenn die Aufbewahrungsdauer > 6 Monate ist. Also gehe ich davon aus, dass eine dieser Datendateien defekt ist oder gelöscht wurde. Als Ursache würde ich Datenträgerprobleme vermuten, die durch den Restart zu Tage getreten sind. Wo liegen die Daten?

                            Error: failed to restore bucket "iobold": 422 Unprocessable Entity: bucket with name iobold already exists
                            Das hatten wir schon mal, da ich die alte (iobold) DB für Auswertung alter Daten nutze.
                            Meine Frage: Wie kann ich mein restore so reparieren, dass er nur die iobroker-data DB verwendet und bei Bedarf restauriert?

                            Das verstehe ich nicht. Alle deine Daten (historische und aktuelle) liegen doch jetzt in einem Bucket, oder? (außer die jetzt gelöschten 🙂 )

                            EDIT: außerdem solltest du mal die Datumsformate in der grafana.ini anpassen, damit die deutschen angezeigt werden:

                            [date_formats]
                            # For information on what formatting patterns that are supported https://momentjs.com/docs/#/displaying/
                            
                            # Default system date format used in time range picker and other places where full time is displayed
                            full_date = DD.MM.YYYY HH:mm:ss
                            
                            # Used by graph and other places where we only show small intervals
                            interval_second = HH:mm:ss
                            interval_minute = HH:mm
                            interval_hour = DD.MM. HH:mm
                            interval_day = DD.MM.
                            interval_month = MM.YYYY
                            interval_year = YYYY
                            
                            
                            M 1 Reply Last reply Reply Quote 0
                            • M
                              manrum1 @Marc Berg last edited by

                              @marc-berg Danke für die schnelle Antwort. Das mit dem Datenverlust bleibt wohl ein Rätsel. Aber inzwischen wei ich, warum er die alte Datenbank (iobold) anmeckert. Liegt an der damaligen Einstelllung:
                              if2.png
                              Wenn mans nicht gleich wieder zurückstellt, dann vergisst mans halt 😠
                              Kannst mir noch einen Tipp geben, wie ich die fehlende Woche wieder restauriere, backup habe ich ja.

                              Marc Berg 1 Reply Last reply Reply Quote 0
                              • Marc Berg
                                Marc Berg Most Active @manrum1 last edited by

                                @manrum1 sagte in [gelöst] backitup und influxdbv2:

                                Kannst mir noch einen Tipp geben, wie ich die fehlende Woche wieder restauriere, backup habe ich ja.

                                Das geht zum Beispiel so:

                                1. Wiederherstellen der Sicherung in ein neues Bucket "iobroker_temp" oder wie auch immer du das nennst. Die Verfahrensweise sind wir oben schon durchgegangen.
                                2. Kopieren der Daten mit folgender Query:
                                from(bucket: "iobroker_temp")
                                  |> range(start: -2mo)
                                  |> to(bucket: "iobold")
                                

                                Den Range kannst du ruhig großzügig wählen, gleiche Daten werden einfach drübergebügelt, es entstehen keine doppelten Datensätze.

                                1. Bucket "iobroker_temp" wieder löschen.
                                M 1 Reply Last reply Reply Quote 0
                                • M
                                  manrum1 @Marc Berg last edited by manrum1

                                  @marc-berg Ah ok, ich zerstöre also keine Daten, da er gleiche (vorhandene) Einträge nicht überschreibt.

                                  Marc Berg 1 Reply Last reply Reply Quote 0
                                  • Marc Berg
                                    Marc Berg Most Active @manrum1 last edited by Marc Berg

                                    @manrum1 sagte in [gelöst] backitup und influxdbv2:

                                    Ah ok, ich zerstöre also keine Daten, da er gleiche (vorhandene) Einträge nicht überschreibt.

                                    Es werden Daten überschrieben, aber wenn du nach der Sicherung keine Daten geändert oder gelöscht hast, erfolgt lediglich ein 1:1 Ersatz. Wenn du aber unsicher bist, dann wähle den range (start: ... , stop ...) einfach genau so, dass der fehlende Zeitraum exakt wiederhergestellt wird.

                                    M 1 Reply Last reply Reply Quote 0
                                    • M
                                      manrum1 @Marc Berg last edited by

                                      @marc-berg Leider klappt es nicht. Habe Backup extrahiert:

                                      /opt/iobroker/backups/tmp/
                                      

                                      Daraufhin führe ich folgendes Kommando aus:

                                      influx restore --bucket iobroker-data  --org home --new-bucket  iobroker-data-2H23 --new-org home --token xxx /opt/iobroker/backups/tmp/
                                      

                                      Passieren tut danach nichts, keine Fehlermeldung. Hattest du nicht mal gesagt, dass ein restore nur funktioniert, wenn das Bucket nicht existiert (in meinem Fall iobroker-data)?

                                      Marc Berg 1 Reply Last reply Reply Quote 0
                                      • Marc Berg
                                        Marc Berg Most Active @manrum1 last edited by

                                        @manrum1 sagte in [gelöst] backitup und influxdbv2:

                                        Hattest du nicht mal gesagt, dass ein restore nur funktioniert, wenn das Bucket nicht existiert (in meinem Fall iobroker-data)?

                                        Habe gerade den Überblick verloren, wie deine Bucket(s) heißen, und ob du eins oder mehrere hast. Vielleicht fasst du das nochmal zusammen.

                                        In diesem Beispiel wird ein Bucket, das im Original "iobroker" heißt und so gesichert wurde in ein neues Bucket "iobroker_tmp" restored:

                                        influx restore --new-bucket iobroker_tmp --bucket iobroker -t xxx /var/lib/influxdb2/backup
                                        

                                        "iobroker_tmp" darf dann natürlich noch nicht existieren.

                                        M 1 Reply Last reply Reply Quote 0
                                        • M
                                          manrum1 @Marc Berg last edited by

                                          @marc-berg Also mein aktives Bucket für iobroker heißt iobroker-data, diese wird auch gebackuped. Daneben nutze ich in meiner Org:
                                          if3.png

                                          Nun wollte ich wie vorher beschrieben ein neues Bucket erzeugen iobroker-data-2H23

                                          influx restore --bucket iobroker-data --org home --new-bucket iobroker-data-2H23 --new-org home --token xxx /opt/iobroker/backups/tmp/
                                          
                                          Marc Berg 1 Reply Last reply Reply Quote 0
                                          • Marc Berg
                                            Marc Berg Most Active @manrum1 last edited by Marc Berg

                                            @manrum1

                                            Also wenn überhaupt keine Meldung erscheint, ist das i.d.R. ein Zeichen dafür, dass das Bucket, welches im Backup enthalten ist, nicht so heißt, wie du angegeben hast (iobroker-data).

                                            Schau mal in die "manifest" Datei, dort gibt es einen Schlüssel "bucketName". Und dort auch prüfen, ob die "organization" passt.

                                            M 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

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

                                            920
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            backitup influxdb v2
                                            9
                                            79
                                            6360
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo