NEWS
Frage : Migrate MySQL nach Influxdb
-
@JackGruber wie gesagt, 3.9 hat gar nicht funktioniert bei mir und bei der 3.7.9 bekomme ich die Fehlermeldung
-
@JackGruber Habe gerade festgestellt, dass die Fehlermeldung nur bei der 64bit Version kommt.
Bei der 32èr gehts.
Leider bekomme ich jetzt noch einen:MySQL connection error
'192.168.1.100' -
@base hm komisch grad mit Python 3.9 64 bit getetet und geht 1a.
Python 3.9.0 (tags/v3.9.0:9cf6752, Oct 5 2020, 15:34:40) [MSC v.1927 64 bit (AMD64)]
Das ist die ganze Fehlerausgabe?
-
@JackGruber ja
RESTART: C:\Users\Base\Downloads\iobroker_mysql_2_influxdb-master\iobroker_mysql_2_influxdb-master\migrate.py
MySQL connection error
'192.168.1.100' -
@base teste doch mal in einer powershell folgendes:
Test-NetConnection 192.168.1.100 -p 3307
-
@JackGruber Lernen Sie das neue plattformübergreifende PowerShell kennen – https://aka.ms/pscore6 PS C:\Users\Base> Test-NetConnection 192.168.1.100 -p 3307 WARNUNG: TCP connect to (192.168.1.100 : 3307) failed
ComputerName : 192.168.1.100
RemoteAddress : 192.168.1.100
RemotePort : 3307
InterfaceAlias : WiFi
SourceAddress : 192.168.1.72
PingSucceeded : True
PingReplyDetails (RTT) : 6 ms
TcpTestSucceeded : False -
@JackGruber PS C:\Users\Base> Test-NetConnection 192.168.1.100 -p 3306 ComputerName : 192.168.1.100
RemoteAddress : 192.168.1.100
RemotePort : 3306
InterfaceAlias : WiFi
SourceAddress : 192.168.1.72
TcpTestSucceeded : TruePS C:\Users\Base>
-
@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. -
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' -
@base ok, pass bitte die
database.json
an, nicht das script, so wie in derdatabase.json.example
als beispiel! -
ok, jetzt hats geklappt. War ne schwere Geburt. Vielen Dank für das Script, deinen Support und deine Geduld
-
@base na dann ist ja gut wenns geklappt hat
-
@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ß -
@edelweiss der Qert steht standardmäßig auf true, kann aber in der
database.json
mittelsstore_ack_boolean
geändert werden. -
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.
-
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
-
@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... -
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 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ß -
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
-
@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 perSELECT * FROM <MEASUREMENT_NAME> LIMIT 5
sich ein paar Datensätze anzeigen lassen um dies zu überprüfen.