Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Frage : Migrate MySQL nach Influxdb

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Frage : Migrate MySQL nach Influxdb

    This topic has been deleted. Only users with topic management privileges can see it.
    • JackGruber
      JackGruber @Edelweiss last edited by

      @edelweiss der Qert steht standardmäßig auf true, kann aber in der database.json mittels store_ack_boolean geändert werden.

      S 1 Reply Last reply Reply Quote 0
      • G
        gender @Edelweiss last edited by

        @edelweiss

        Der Wert ist oben in meiner Anleitung im Python-Skript bereits auf true gesetzt. Du selbst musst den also nicht "irgendwo" setzen; dass passiert bereits in dem Python-Skript.

        1 Reply Last reply Reply Quote 0
        • E
          Edelweiss last edited by Edelweiss

          @gender
          @JackGruber

          danke für eure Antworten.

          Bin hier noch komplett neu (Docker und influxDBs)

          Habe jetzt den Import in meinen Docker geladen und mit dem Befehl

          influx -import -path=import.txt
          

          gestartet.

          Er bring mir aber dann die Meldung

          2021/02/05 21:43:19 error: error parsing query: found StromzaehlerGesamt, expect
          ed SELECT, DELETE, SHOW, CREATE, DROP, EXPLAIN, GRANT, REVOKE, ALTER, SET, KILL 
          at line 1, char 1
          

          Die Datenbank hat er allerdings angelegt, aber es sind keien Measurements darin

          In meinem import.txt sieht es folgendermaßen aus

          
          #DDL 
          CREATE DATABASE Dummschul
          
          #DML
          #CONTEXT-DATABASE: Dummschul
          
          StromzaehlerGesamt ack=True,from="system.adapter.wiffi-wz.0",q=0.0,value=0.902 1612560689242000000
          StromzaehlerGesamt ack=True,from="system.adapter.wiffi-wz.0",q=0.0,value=0.2 1612560689242000000
          StromzaehlerGesamt ack=True,from="system.adapter.wiffi-wz.0",q=0.0,value=0.249 1612560629226000000
          StromzaehlerGesamt ack=True,from="system.adapter.wiffi-wz.0",q=0.0,value=0.893 1612560629225000000
          

          Könnte ihr mir Bitte noch einen Anstoß geben 😇

          Danke

          G 1 Reply Last reply Reply Quote 0
          • G
            gender @Edelweiss last edited by

            @edelweiss
            Hmm, ich glaube du bist dann beim Importieren nicht an der richtigen Stelle. Du musst (soweit ich mich erinnere) nur in die Komandokonsole von Influx und dort den import-Befehl ausführen und nicht direkt in der Konsole schon in die Datenbank reingehen...

            1 Reply Last reply Reply Quote 0
            • E
              Edelweiss last edited by Edelweiss

              Hallo zusammen,
              ich wollte nur ein kurzes Feedback geben woran es gelegen hat.

              Scheinbar stimmt etwas nicht mit der Txt Datei (sie hat aber die c7e8c4c9-bcc3-4c45-96e5-0aa817ecde85-grafik.png Kennung ) , welche aus dem py Script generiert wird.

              Ich habe nämlich den Inhalt daraus 1:1 in die influx NOAA_ data.txt kopiert und danach funktionierte es, beim importieren

              Desweiteren funktionierte es bei mir auch nur, wenn der haeder mit jeweils einer Zeile Versatz eingetragen wird.

              #DDL 
              
              CREATE DATABASE Dummschul
              
              #DML
              
              #CONTEXT-DATABASE: Dummschul
              

              Danke für die Hilfe
              Gruß

              1 Reply Last reply Reply Quote 1
              • S
                Sputnik24 @JackGruber last edited by

                @jackgruber

                Vielen Dank für das tolle Script. Das Script läuft bei mir erfolgreich durch, Grafana zeigt mir auch alle Datenpunkte an, sagt aber "No data". Die Daten werden vom sql Adapter in eine MariaDB auf der Synology gespeichert.

                Muss ich im Script etwas anpassen?

                Danke

                JackGruber 1 Reply Last reply Reply Quote 0
                • JackGruber
                  JackGruber @Sputnik24 last edited by

                  @sputnik24
                  Hört sich eher danach an, dass etwas in der auswertung nicht stimmt.

                  Einfach das influx Kommandozeilenwerkzeug per influx öffnen, dann die Datenbank auswählen
                  use <DATENBANK> und per SELECT * FROM <MEASUREMENT_NAME> LIMIT 5 sich ein paar Datensätze anzeigen lassen um dies zu überprüfen.

                  S M 2 Replies Last reply Reply Quote 0
                  • S
                    Sputnik24 @JackGruber last edited by Sputnik24

                    @jackgruber Ich lass iobroker mittlerweile Daten in influxdb speichern. Diese werden mir in Grafana auch angezeigt. Ich vermute ein Problem mit dem timestamp Format.

                    Ich hab die database nochmal gelöscht und neu angelegt, jetzt funktioniert es.

                    1 Reply Last reply Reply Quote 0
                    • M
                      marco-mh @JackGruber last edited by

                      @jackgruber Hallo, ich wollte mich auch mal versuchen an deinem Script. Meine MYSQL DB umfasst mittlerweile 1,8 Mio Einträge. Ich bin allerdings ne absolute NULL in sachen Scripte und bekomme schon graue Haare.
                      Jetzt hab ich das Script mit meinen Daten, so das ich denke das es richtig ist, geändert. Nun bekomme ich folgende meldung

                      
                      C:\Users\marco\Downloads\iobroker_mysql_2_influxdb-master>migrate.py ALL
                        File "C:\Users\marco\Downloads\iobroker_mysql_2_influxdb-master\migrate.py", line 156
                          print(f"Processing row {processed_rows + 1:,} to {processed_rows + len(selected_rows):,} from LIMIT {start_row:,} / {start_row + query_max_rows:,} " +
                                                                                                                                                                             ^
                      SyntaxError: invalid syntax
                      
                      C:\Users\marco\Downloads\iobroker_mysql_2_influxdb-master>
                      
                      

                      wo kann hier der Fehler sein?

                      Meine geänderten Daten sehen so aus

                      
                      {\rtf1\ansi\deff0\nouicompat{\fonttbl{\f0\fnil\fcharset0 Courier New;}}
                      {\*\generator Riched20 10.0.14393}\viewkind4\uc1 
                      \pard\f0\fs22\lang1033\par
                          MYSQL_CONNECTION = pymysql.connect(host=db['MySQL']['192.168.178.8'],\par
                                                             port=db['MySQL']['3306'],\par
                                                             user=db['MySQL']['root'],\par
                                                             password=db['MySQL']['XXXXXX'],\par
                                                             db=db['MySQL']['database'])\par
                      except pymysql.OperationalError as error:\par
                          print(error)\par
                          sys.exit(1)\par
                      except Exception as ex:\par
                          print("MySQL connection error")\par
                          print(ex)\par
                          sys.exit(1)\par
                      \par
                      \par
                      INFLUXDB_CONNECTION = InfluxDBClient(host=db['InfluxDB']['192.168.178.102'],\par
                                                           ssl=db['InfluxDB']['ssl'],\par
                                                           verify_ssl=True,\par
                                                           port=db['InfluxDB']['22'],\par
                                                           username=db['InfluxDB']['iobroker'],\par
                                                           password=db['InfluxDB']['XXXXXX'],\par
                                                           database=db['InfluxDB']['iobroker_import'])\par
                      }
                      
                      

                      Danke für die hilfe. Gruß Marco

                      JackGruber 1 Reply Last reply Reply Quote 0
                      • JackGruber
                        JackGruber @marco-mh last edited by

                        @marco-mh bitte nur die database.json.example in database.json umbenennen und die daten dort eintragen.

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          marco-mh @JackGruber last edited by

                          @jackgruber Danke für die schnelle Antwort. Aber der Fehler bleibt leider.
                          ichnhab die Daten jetzt in der Json geändert.

                          JackGruber 1 Reply Last reply Reply Quote 0
                          • JackGruber
                            JackGruber @marco-mh last edited by

                            @marco-mh Welche python version ist im einsatz?

                            M 1 Reply Last reply Reply Quote 0
                            • M
                              marco-mh @JackGruber last edited by

                              @jackgruber 3.9.5

                              JackGruber 1 Reply Last reply Reply Quote 0
                              • JackGruber
                                JackGruber @marco-mh last edited by

                                @marco-mh OK, das ist ok. Aber die Fehlermeldung deutet auf ein altes python ...

                                Die Zeile ist nur für den Status, kann daher auch auskommentiert/gelöscht werden.

                                M 1 Reply Last reply Reply Quote 0
                                • M
                                  marco-mh @JackGruber last edited by

                                  @jackgruber ok, die 157 und 181 musste ich auch # setzen
                                  jetzt kommt folgendes

                                  
                                  C:\Users\marco\Downloads\iobroker_mysql_2_influxdb-master>migrate.py ALL
                                  Traceback (most recent call last):
                                    File "C:\Users\marco\Downloads\iobroker_mysql_2_influxdb-master\migrate.py", line 5, in <module>
                                      from influxdb import InfluxDBClient
                                  ImportError: No module named influxdb
                                  
                                  
                                  JackGruber 1 Reply Last reply Reply Quote 0
                                  • JackGruber
                                    JackGruber @marco-mh last edited by

                                    wie in der anleitung beschrieben pip install -r requirements.txt ausgeführt?

                                    M 3 Replies Last reply Reply Quote 0
                                    • M
                                      marco-mh @JackGruber last edited by

                                      @jackgruber ja hab ich im extrahierten ordner gemacht

                                      1 Reply Last reply Reply Quote 0
                                      • M
                                        marco-mh @JackGruber last edited by

                                        @jackgruber ach quatsch, hab den ja gelöscht und neu extrahiert

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          marco-mh @JackGruber last edited by

                                          @jackgruber bei der installation kam folgendes, ist das ok?

                                          
                                          WARNING: Ignoring invalid distribution -p (c:\python39\lib\site-packages)
                                          WARNING: Ignoring invalid distribution -ip (c:\python39\lib\site-packages)
                                          WARNING: Ignoring invalid distribution - (c:\python39\lib\site-packages)
                                          WARNING: Ignoring invalid distribution -p (c:\python39\lib\site-packages)
                                          WARNING: Ignoring invalid distribution -ip (c:\python39\lib\site-packages)
                                          WARNING: Ignoring invalid distribution - (c:\python39\lib\site-packages)
                                          WARNING: Ignoring invalid distribution -p (c:\python39\lib\site-packages)
                                          WARNING: Ignoring invalid distribution -ip (c:\python39\lib\site-packages)
                                          WARNING: Ignoring invalid distribution - (c:\python39\lib\site-packages)
                                          
                                          

                                          aber nach der installation kommt immer noch der selbe fehler

                                          JackGruber 1 Reply Last reply Reply Quote 0
                                          • JackGruber
                                            JackGruber @marco-mh last edited by JackGruber

                                            @marco-mh Morgen, also ich bin mir fast sicher, dass ne alte python version < 3.6 beim aufruf genutzt wird.
                                            Ich hab das Script angepasst um dies zu überüfen. Bitte nochmals herunterladen und testen.

                                            Zum pip fehler. Da stimmt was nicht mit den installierten packeten.
                                            Was passiert bei einem pip freeze und dann pip list.

                                            M 2 Replies 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

                                            542
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            31
                                            151
                                            18335
                                            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