Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Frage : Migrate MySQL nach Influxdb

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

Frage : Migrate MySQL nach Influxdb

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
151 Beiträge 31 Kommentatoren 25.7k Aufrufe 25 Watching
  • Ä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.
  • JackGruberJ JackGruber

    @base oh stimt, MySQL standard port ist 3306 🙂

    Hm also der port ist erreichbar, aber das script kann sich ned verbinden ...
    Hast du Verschlüsselung für MySQL aktiviert?

    änder mal folgende Zeilen

    try:
        MYSQL_CONNECTION = pymysql.connect(host = db['MySQL']['host'],
                                        port = db['MySQL']['port'],
                                        user = db['MySQL']['user'],
                                        password = db['MySQL']['password'],
                                        db = db['MySQL']['database'])
    except pymysql.OperationalError as error:
        print (error)
        sys.exit(1)
    except Exception as ex:
        print("MySQL connection error")
        print(ex)
        sys.exit(1)
    

    in nur das ab:

    MYSQL_CONNECTION = pymysql.connect(host = db['MySQL']['host'],
                                    port = db['MySQL']['port'],
                                    user = db['MySQL']['user'],
                                    password = db['MySQL']['password'],
                                    db = db['MySQL']['database'])
    

    Achte darauf, das vor den MYSQL_CONNECTION keine lehrzeichen sind!
    Danach post mal die ganze Fehlerausgabe.

    B Offline
    B Offline
    base
    schrieb am zuletzt editiert von
    #56

    @JackGruber

    RESTART: C:\Users\Base\Downloads\iobroker_mysql_2_influxdb-master\iobroker_mysql_2_influxdb-master\migrate.py
    Traceback (most recent call last):
    File "C:\Users\Base\Downloads\iobroker_mysql_2_influxdb-master\iobroker_mysql_2_influxdb-master\migrate.py", line 33, in <module>
    MYSQL_CONNECTION = pymysql.connect(host = db['192.168.1.100']['host'],
    KeyError: '192.168.1.100'

    JackGruberJ 1 Antwort Letzte Antwort
    0
    • B base

      @JackGruber

      RESTART: C:\Users\Base\Downloads\iobroker_mysql_2_influxdb-master\iobroker_mysql_2_influxdb-master\migrate.py
      Traceback (most recent call last):
      File "C:\Users\Base\Downloads\iobroker_mysql_2_influxdb-master\iobroker_mysql_2_influxdb-master\migrate.py", line 33, in <module>
      MYSQL_CONNECTION = pymysql.connect(host = db['192.168.1.100']['host'],
      KeyError: '192.168.1.100'

      JackGruberJ Offline
      JackGruberJ Offline
      JackGruber
      schrieb am zuletzt editiert von
      #57

      @base ok, pass bitte die database.json an, nicht das script, so wie in der database.json.example als beispiel!

      B 1 Antwort Letzte Antwort
      0
      • JackGruberJ JackGruber

        @base ok, pass bitte die database.json an, nicht das script, so wie in der database.json.example als beispiel!

        B Offline
        B Offline
        base
        schrieb am zuletzt editiert von
        #58

        @JackGruber

        ok, jetzt hats geklappt. War ne schwere Geburt. Vielen Dank für das Script, deinen Support und deine Geduld😁

        JackGruberJ 1 Antwort Letzte Antwort
        0
        • B base

          @JackGruber

          ok, jetzt hats geklappt. War ne schwere Geburt. Vielen Dank für das Script, deinen Support und deine Geduld😁

          JackGruberJ Offline
          JackGruberJ Offline
          JackGruber
          schrieb am zuletzt editiert von
          #59

          @base na dann ist ja gut wenns geklappt hat 🙂

          1 Antwort Letzte Antwort
          0
          • E Offline
            E Offline
            Edelweiss
            schrieb am zuletzt editiert von
            #60

            @gender ,
            ich habe nochmal eine Frage zu deiner Beschreibung.
            Wie und wo setzt man den ack Wert auf "Boolean True" ?

            Wäre dankbar dafür , habe bis dato das Textfile erstellt
            Gruß

            JackGruberJ G 2 Antworten Letzte Antwort
            0
            • E Edelweiss

              @gender ,
              ich habe nochmal eine Frage zu deiner Beschreibung.
              Wie und wo setzt man den ack Wert auf "Boolean True" ?

              Wäre dankbar dafür , habe bis dato das Textfile erstellt
              Gruß

              JackGruberJ Offline
              JackGruberJ Offline
              JackGruber
              schrieb am zuletzt editiert von
              #61

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

              S 1 Antwort Letzte Antwort
              0
              • E Edelweiss

                @gender ,
                ich habe nochmal eine Frage zu deiner Beschreibung.
                Wie und wo setzt man den ack Wert auf "Boolean True" ?

                Wäre dankbar dafür , habe bis dato das Textfile erstellt
                Gruß

                G Offline
                G Offline
                gender
                schrieb am zuletzt editiert von
                #62

                @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 Antwort Letzte Antwort
                0
                • E Offline
                  E Offline
                  Edelweiss
                  schrieb am zuletzt editiert von Edelweiss
                  #63

                  @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 Antwort Letzte Antwort
                  0
                  • E 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 Offline
                    G Offline
                    gender
                    schrieb am zuletzt editiert von
                    #64

                    @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 Antwort Letzte Antwort
                    0
                    • E Offline
                      E Offline
                      Edelweiss
                      schrieb am zuletzt editiert von Edelweiss
                      #65

                      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 Antwort Letzte Antwort
                      1
                      • JackGruberJ JackGruber

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

                        S Offline
                        S Offline
                        Sputnik24
                        schrieb am zuletzt editiert von
                        #66

                        @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

                        JackGruberJ 1 Antwort Letzte Antwort
                        0
                        • S Sputnik24

                          @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

                          JackGruberJ Offline
                          JackGruberJ Offline
                          JackGruber
                          schrieb am zuletzt editiert von
                          #67

                          @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 Antworten Letzte Antwort
                          0
                          • JackGruberJ JackGruber

                            @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 Offline
                            S Offline
                            Sputnik24
                            schrieb am zuletzt editiert von Sputnik24
                            #68

                            @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 Antwort Letzte Antwort
                            0
                            • JackGruberJ JackGruber

                              @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.

                              M Offline
                              M Offline
                              marco-mh
                              schrieb am zuletzt editiert von
                              #69

                              @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

                              node.js 16.15.1, NPM 8.11, js.Controller 4.0.23

                              JackGruberJ 1 Antwort Letzte Antwort
                              0
                              • M marco-mh

                                @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

                                JackGruberJ Offline
                                JackGruberJ Offline
                                JackGruber
                                schrieb am zuletzt editiert von
                                #70

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

                                M 1 Antwort Letzte Antwort
                                0
                                • JackGruberJ JackGruber

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

                                  M Offline
                                  M Offline
                                  marco-mh
                                  schrieb am zuletzt editiert von
                                  #71

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

                                  node.js 16.15.1, NPM 8.11, js.Controller 4.0.23

                                  JackGruberJ 1 Antwort Letzte Antwort
                                  0
                                  • M marco-mh

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

                                    JackGruberJ Offline
                                    JackGruberJ Offline
                                    JackGruber
                                    schrieb am zuletzt editiert von
                                    #72

                                    @marco-mh Welche python version ist im einsatz?

                                    M 1 Antwort Letzte Antwort
                                    0
                                    • JackGruberJ JackGruber

                                      @marco-mh Welche python version ist im einsatz?

                                      M Offline
                                      M Offline
                                      marco-mh
                                      schrieb am zuletzt editiert von
                                      #73

                                      @jackgruber 3.9.5

                                      node.js 16.15.1, NPM 8.11, js.Controller 4.0.23

                                      JackGruberJ 1 Antwort Letzte Antwort
                                      0
                                      • M marco-mh

                                        @jackgruber 3.9.5

                                        JackGruberJ Offline
                                        JackGruberJ Offline
                                        JackGruber
                                        schrieb am zuletzt editiert von
                                        #74

                                        @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 Antwort Letzte Antwort
                                        0
                                        • JackGruberJ JackGruber

                                          @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 Offline
                                          M Offline
                                          marco-mh
                                          schrieb am zuletzt editiert von
                                          #75

                                          @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
                                          
                                          

                                          node.js 16.15.1, NPM 8.11, js.Controller 4.0.23

                                          JackGruberJ 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

                                          748

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe