Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. History: Migration von File zu MySQL mit Daten-Mitnahme möglich?

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    299

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    9
    1
    276

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    916

History: Migration von File zu MySQL mit Daten-Mitnahme möglich?

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
38 Beiträge 5 Kommentatoren 5.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.
  • D Offline
    D Offline
    Dax
    schrieb am zuletzt editiert von
    #28

    So, hab den adapter jetzt neu installiert. Selber fehler cannot find module pg-negative.

    Hier der Install-Log:

    $ ./iobroker add sql
    npm install iobroker.sql --production --prefix "/opt/iobroker" (System call)
    npm
     WARN deprecated node-uuid@1.4.8: Use uuid module instead
    npm
     WARN deprecated sprintf@0.1.5: The sprintf package is deprecated in favor of sprintf-js.
    node-pre-gyp
     ERR!
     Tried to download(403): https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v3.1.13/node-v46-linux-arm.tar.gz node-pre-gyp ERR! Pre-built binaries not found for sqlite3@3.1.13 and node@4.8.7 (node-v46 ABI) (falling back to source compile with node-gyp) 
    
    ../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginOpen(node_sqlite3::Database::Baton*)’:../src/database.cc:144:9: warning: unused variable ‘status’ [-Wunused-variable]
         int status = uv_queue_work(uv_default_loop(),
             ^
    
    ../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginClose(node_sqlite3::Database::Baton*)’:../src/database.cc:230:9: warning: unused variable ‘status’ [-Wunused-variable]
         int status = uv_queue_work(uv_default_loop(),
             ^
    
    ../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginExec(node_sqlite3::Database::Baton*)’:../src/database.cc:525:9: warning: unused variable ‘status’ [-Wunused-variable]
         int status = uv_queue_work(uv_default_loop(),
             ^
    
    ../src/database.cc: In static member function ‘static void node_sqlite3::Database::Work_BeginLoadExtension(node_sqlite3::Database::Baton*)’:../src/database.cc:625:9: warning: unused variable ‘status’ [-Wunused-variable]
         int status = uv_queue_work(uv_default_loop(),
             ^
    
    ../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginPrepare(node_sqlite3::Database::Baton*)’:../src/statement.cc:118:9: warning: unused variable ‘status’ [-Wunused-variable]
         int status = uv_queue_work(uv_default_loop(),
             ^
    
    In file included from ../src/statement.cc:6:0:../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginBind(node_sqlite3::Statement::Baton*)’:
    ../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
         int status = uv_queue_work(uv_default_loop(),                              \
             ^
    ../src/statement.cc:322:5: note: in expansion of macro ‘STATEMENT_BEGIN’
         STATEMENT_BEGIN(Bind);
         ^
    
    ../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginGet(node_sqlite3::Statement::Baton*)’:../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
         int status = uv_queue_work(uv_default_loop(),                              \
             ^
    ../src/statement.cc:370:5: note: in expansion of macro ‘STATEMENT_BEGIN’
         STATEMENT_BEGIN(Get);
         ^
    
    ../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginRun(node_sqlite3::Statement::Baton*)’:../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
         int status = uv_queue_work(uv_default_loop(),                              \
             ^
    ../src/statement.cc:438:5: note: in expansion of macro ‘STATEMENT_BEGIN’
         STATEMENT_BEGIN(Run);
         ^
    
    ../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginAll(node_sqlite3::Statement::Baton*)’:../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
         int status = uv_queue_work(uv_default_loop(),                              \
             ^
    ../src/statement.cc:504:5: note: in expansion of macro ‘STATEMENT_BEGIN’
         STATEMENT_BEGIN(All);
         ^
    
    ../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginEach(node_sqlite3::Statement::Baton*)’:../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
         int status = uv_queue_work(uv_default_loop(),                              \
             ^
    ../src/statement.cc:601:5: note: in expansion of macro ‘STATEMENT_BEGIN’
         STATEMENT_BEGIN(Each);
         ^
    
    ../src/statement.cc: In static member function ‘static void node_sqlite3::Statement::Work_BeginReset(node_sqlite3::Statement::Baton*)’:../src/macros.h:125:9: warning: unused variable ‘status’ [-Wunused-variable]
         int status = uv_queue_work(uv_default_loop(),                              \
             ^
    ../src/statement.cc:724:5: note: in expansion of macro ‘STATEMENT_BEGIN’
         STATEMENT_BEGIN(Reset);
         ^
    
    host.raspberrypi install adapter sql
    got /opt/iobroker/node_modules/iobroker.sql/admin
    upload [5] sql.admin /opt/iobroker/node_modules/iobroker.sql/admin/words.js words.js application/javascript
    upload [4] sql.admin /opt/iobroker/node_modules/iobroker.sql/admin/sql.png sql.png image/png
    upload [3] sql.admin /opt/iobroker/node_modules/iobroker.sql/admin/index_m.html index_m.html text/html
    upload [2] sql.admin /opt/iobroker/node_modules/iobroker.sql/admin/index.html index.html text/html
    upload [1] sql.admin /opt/iobroker/node_modules/iobroker.sql/admin/custom_m.html custom_m.html text/html
    upload [0] sql.admin /opt/iobroker/node_modules/iobroker.sql/admin/custom.html custom.html text/html
    host.raspberrypi object system.adapter.sql created
    host.raspberrypi object _design/custom created
    host.raspberrypi create instance sql
    host.raspberrypi object sql.0.info.connection created
    host.raspberrypi object sql.0.info created
    host.raspberrypi object system.adapter.sql.0.outputCount created
    host.raspberrypi object system.adapter.sql.0.inputCount created
    host.raspberrypi object system.adapter.sql.0.uptime created
    host.raspberrypi object system.adapter.sql.0.memRss created
    host.raspberrypi object system.adapter.sql.0.memHeapTotal created
    host.raspberrypi object system.adapter.sql.0.memHeapUsed created
    host.raspberrypi object system.adapter.sql.0.connected created
    host.raspberrypi object system.adapter.sql.0.alive created
    host.raspberrypi object system.adapter.sql.0 created
    process exited with code 0
    
    1 Antwort Letzte Antwort
    0
    • apollon77A Offline
      apollon77A Offline
      apollon77
      schrieb am zuletzt editiert von
      #29

      node -v

      npm -v

      ?

      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
      • D Offline
        D Offline
        Dax
        schrieb am zuletzt editiert von
        #30

        node v4.8.7

        npm v2.15.11

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

          Bei mir auch. interessant.

          Erstmal. Wenn ich deinen befehl von oben kopiere sind bei den "zwei Minuszeichen" eines irgendwie komisch. Tipp es am besten mal ab. Dann tut es auch bei mir. Irgendwie sind da wohl komische Zeichen rein gekommen!! vllt sind auch die leerzeichen komisch

          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
          • D Offline
            D Offline
            Dax
            schrieb am zuletzt editiert von
            #32

            Aja super, jetzt hat er gestartet. zwar auch mit der fehlermeldung aber danach lief sql an. Und jetzt läuft der Converter grad durch :)

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

              Na dann warten wir mal was der nächste Crash sagt (falls einer kommt)

              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
              • D Offline
                D Offline
                Dax
                schrieb am zuletzt editiert von
                #34

                Hmm zu früh gefreut. Erst kamen jede Menge fehler

                { [Error: connect ETIMEDOUT]
                  errorno: 'ETIMEDOUT',
                  code: 'ETIMEDOUT',
                  syscall: 'connect',
                  fatal: true }
                

                und jetzt

                { [Error: Connection lost: The server closed the connection.] fatal: true, code: 'PROTOCOL_CONNECTION_LOST' }
                Reconnection to DB.
                Reconnection to DB.
                root@raspberrypi:/opt/iobroker#
                
                1 Antwort Letzte Antwort
                0
                • apollon77A Offline
                  apollon77A Offline
                  apollon77
                  schrieb am zuletzt editiert von
                  #35

                  Bitte schick mal komplett. Nicht nur auszüge

                  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
                  • frankjokeF Offline
                    frankjokeF Offline
                    frankjoke
                    schrieb am zuletzt editiert von
                    #36

                    Hallo, bin sch 3x umgezogen!

                    Zuerst von XS1 (FS20 protokoll auf SD-Karte) auf den History-Adapter -> auf MySQL -> PostgreSQL wo ich nun seit 1 Jahr bin, nur vom Raspi auf opi2e und dann noch auf einen CSL-NUK umgezogen.

                    Postgres braucht weniger ressourcen und ist meiner Meinung scheller. AUf dem Raspi war das ein Problem da dort der Speicher sehr langsam ist (egal ob SD oder USB), und außerdem .

                    Es gibt ein nettes admin-tool für PostgreSQL, pgAdmin (https://www.pgadmin.org/download/) mit dem ich auf die verschiedenen DB's an den Test-Rechnern oder am Echtzeitsystem zugreifen kann.

                    Momentan hab ich ca 2,2 Millionen Datenpunkte im ts_numbers (und noch mal 200k in ts_bool und ts_string), Daten die teilweise bis 5 Jahre zurückreichen.

                    Wichtig, hab mir ein kleines script geschrieben (hatte das auch auf MySQL) welches ein Backup von ioBroker und ein Backup (dump) der SQL erzeugt und speichere das wöchentlich auf das NAS.

                    Bei MySQL war das

                    sudo mysqldump -uroot -ppi --all-databases ...
                    

                    Jetzt bei PostgreSQL

                    sudo -u postgres pg_dump iobroker | gzip > /mnt/nas/.../postgres.backup.$(date '+%Y%m%d').sql.gz
                    

                    iobroker wird mit

                    BFILE=`sudo iobroker backup | cut -d " " -f 3`
                    cp -v $BFILE /mnt/nas/.../
                    
                    

                    ins gleiche Verzeichnis gespeichert.

                    Das SQL Backup ist bei mir mit gzip momentan 18MB, iobroker ~1MB.

                    Diese Methode hat mir schon mal das Leben (die Daten) gerettet da mir am Raspi eine SD und später auch ein USB-Stick abgeschmiert ist. Das war der Grund warum ich dann auf opi2e und später auf den NUK (alles unter Linux) umgestiegen bin da diese MMC's als Speicher haben.

                    Frank,

                    NUC's, VM's und Raspi's unter Raspian, Ubuntu und Debian zum Testen.
                    Adapter die ich selbst beigesteuert habe: BMW, broadlink2, radar2, systeminfo, km200, xs1 und einige im Anmarsch!

                    1 Antwort Letzte Antwort
                    0
                    • D Offline
                      D Offline
                      Dax
                      schrieb am zuletzt editiert von
                      #37
                      { [Error: connect ETIMEDOUT]
                        errorno: 'ETIMEDOUT',
                        code: 'ETIMEDOUT',
                        syscall: 'connect',
                        fatal: true }
                      { [Error: connect ETIMEDOUT]
                        errorno: 'ETIMEDOUT',
                        code: 'ETIMEDOUT',
                        syscall: 'connect',
                        fatal: true }
                      { [Error: connect ETIMEDOUT]
                        errorno: 'ETIMEDOUT',
                        code: 'ETIMEDOUT',
                        syscall: 'connect',
                        fatal: true }
                      { [Error: connect ETIMEDOUT]
                        errorno: 'ETIMEDOUT',
                        code: 'ETIMEDOUT',
                        syscall: 'connect',
                        fatal: true }
                      Datatype hm-rega.0.3650: Currently: number, StorageType: Number
                      INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(1, 1518537565661, 0, 1, 1, 0);
                      new value received for hm-rega.0.3650, new-value=0.3, ts=1518537581242, relog=false
                      Min-Delta reached hm-rega.0.3650, last-value=0, new-value=0.3, ts=1518537581242
                      new value received for hm-rega.0.3650, new-value=0.4, ts=1518537585291, relog=false
                      Min-Delta reached hm-rega.0.3650, last-value=0.3, new-value=0.4, ts=1518537585291
                      new value received for hm-rega.0.2477, new-value=0.2, ts=1518537587246, relog=false
                      Min-Delta reached hm-rega.0.2477, last-value=0, new-value=0.2, ts=1518537587246
                      new value received for hm-rega.0.3650, new-value=0.5, ts=1518537587261, relog=false
                      Min-Delta reached hm-rega.0.3650, last-value=0.4, new-value=0.5, ts=1518537587261
                      new value received for hm-rega.0.16972, new-value=27.3, ts=1518537587261, relog=false
                      Min-Delta reached hm-rega.0.16972, last-value=27.2, new-value=27.3, ts=1518537587261
                      new value received for hm-rega.0.3650, new-value=0.7, ts=1518537591260, relog=false
                      Min-Delta reached hm-rega.0.3650, last-value=0.5, new-value=0.7, ts=1518537591260
                      new value received for hm-rega.0.3650, new-value=0.6, ts=1518537593263, relog=false
                      Min-Delta reached hm-rega.0.3650, last-value=0.7, new-value=0.6, ts=1518537593263
                      new value received for hm-rega.0.3650, new-value=0.5, ts=1518537595256, relog=false
                      Min-Delta reached hm-rega.0.3650, last-value=0.6, new-value=0.5, ts=1518537595256
                      new value received for hm-rega.0.3650, new-value=0.6, ts=1518537599251, relog=false
                      Min-Delta reached hm-rega.0.3650, last-value=0.5, new-value=0.6, ts=1518537599251
                      new value received for hm-rega.0.3650, new-value=0.7, ts=1518537601267, relog=false
                      Min-Delta reached hm-rega.0.3650, last-value=0.6, new-value=0.7, ts=1518537601267
                      new value received for hm-rega.0.3650, new-value=0.6, ts=1518537607279, relog=false
                      Min-Delta reached hm-rega.0.3650, last-value=0.7, new-value=0.6, ts=1518537607279
                      new value received for hm-rpc.0.MEQ0690418.1.FILLING_LEVEL, new-value=100, ts=1518537607722, relog=false
                      value not changed hm-rpc.0.MEQ0690418.1.FILLING_LEVEL, last-value=100, new-value=100, ts=1518537607722
                      new value received for hm-rega.0.3650, new-value=0.5, ts=1518537609267, relog=false
                      Min-Delta reached hm-rega.0.3650, last-value=0.6, new-value=0.5, ts=1518537609267
                      new value received for hm-rega.0.3650, new-value=0.6, ts=1518537611280, relog=false
                      Min-Delta reached hm-rega.0.3650, last-value=0.5, new-value=0.6, ts=1518537611280
                      Datatype hm-rega.0.2477: Currently: number, StorageType: Number
                      INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(2, 1518537587246, 0.2, 1, 1, 0);
                      Datatype hm-rega.0.16972: Currently: number, StorageType: Number
                      INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(4, 1518537587261, 27.3, 1, 1, 0);
                      Datatype hm-rega.0.3650: Currently: number, StorageType: Number
                      INSERT INTO `iobroker`.ts_number (id, ts, val, ack, _from, q) VALUES(1, 1518537611280, 0.6, 1, 1, 0);
                      { [Error: Connection lost: The server closed the connection.] fatal: true, code: 'PROTOCOL_CONNECTION_LOST' }
                      Reconnection to DB.
                      Reconnection to DB.
                      root@raspberrypi:/opt/iobroker#
                      
                      1 Antwort Letzte Antwort
                      0
                      • apollon77A Offline
                        apollon77A Offline
                        apollon77
                        schrieb am zuletzt editiert von
                        #38

                        Also mein Tipp ist das die Mysql die Verbindung geschlossen hat. Schau mal ob das MySQL Log irgendwas hergibt. Ansonsten nutze mal die Parameter um die Geschwindigkeit etwas zu verlangsamen von dem Skript

                        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

                        Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                        Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                        Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                        Registrieren Anmelden
                        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

                        278

                        Online

                        32.8k

                        Benutzer

                        82.8k

                        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