NEWS
Frage : Migrate MySQL nach Influxdb
- 
					
					
					
					
 @simatec habe dein Script von oben ausprobiert, dass holt aber nicht alle Objekte... 
 was muss ich da ändern?ok, habs gefunden. Muss natürlich die SQL Abfrage anpassen. Jetzt klappts 
- 
					
					
					
					
 @base was für eine python version nutzt du? 
 Bei mir läuft das script ohne probleme durch.
  
- 
					
					
					
					
 @JackGruber hab jetzt Version 3.7.9, hatte vorher 3.9, da ging gar nichts. Den Befehl pip install -r requirements.txt habe ich in der Eingabeaufforderung im entsprechenden Ordner durchgeführt, war das so richtig? 
- 
					
					
					
					
 @base Ja, genau, dann sollte er alle nötigen module installieren. 
 Hm, muss ich mir mal mit python 3.9 anschauen ...
- 
					
					
					
					
 @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_CONNECTIONkeine 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.jsonan, nicht das script, so wie in derdatabase.json.exampleals 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.jsonmittelsstore_ack_booleangeä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.txtgestartet. 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 1Die 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 1612560629225000000Könnte ihr mir Bitte noch einen Anstoß geben  Danke 
 
		
	