Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   MySQL Verbindung // Datenbankabgleich (https://www.delphipraxis.net/183150-mysql-verbindung-datenbankabgleich.html)

Starfunk2208 16. Dez 2014 07:39

MySQL Verbindung // Datenbankabgleich
 
Hallo liebes Forum,

ich bin ganz neu hier und hoffe dass mir erfahrene Entwickler bei folgendem Problem weiterhelfen können :)

Ich habe einen Datenlogger der kontinuierlich verschiedene Parameter erfasst und in internem Speicher ablegt. Dazu gibt es eine Software die die Daten ausliesst, lokal in einer Paradox Datenbank speichert und diese dann in eine SQL Datenbank schreibt und synchronisiert. Soweit klappt das auch alles wunderbar. Problem an der Sache ist nun, dass die Entwicklung für das Programm eingestellt wurde. Die Verbindung zur SQL Datenbank wird über eine libmysql40.dll gemacht. Das hat zur Folge, dass ich ab SQL Version 4.1 auf dem Server keine Verbindung mehr aufbauen kann, da ja mit Version 4.1 die Hashlänge für das Passwort geändert wurde.Ich habe auch keinen Quellcode zur Software, und bin auch kein Entwickler:)

Gibt es eine Möglichkeit, ohne Kenntnis des Quellcodes, eine SQL-Verbindung ab 4.1 in das Programm zu schreiben? Kann man die EXE soweit dekompilieren dass das klappen könnte?

Für Eure Hilfe bzw. Einschätzung bin ich dankbar.

Vielen Dank!

Michael

Sir Rufo 16. Dez 2014 07:47

AW: MySQL Verbindung // Datenbankabgleich
 
Du kannst versuchen eine neuere libmysql.dll dem unterzujubeln oder den MySQL auf Bei Google suchenmysql old password zu stellen.

Als weitere Alternative bleibt natürlich noch das Entwickeln eines neuen Ausleseprogramms :)

Starfunk2208 16. Dez 2014 08:15

AW: MySQL Verbindung // Datenbankabgleich
 
Hallo :)

eine neuere DLL unterjubeln habe ich schon versucht. Problem ist dann, dass das Programm beim Aufruf selbiger abstürzt. Ich habe mal die libmysql40.dll durch einen Decompiler gejagt und dort sind Unit Lists drin, die speziell auf der Datenlogger hinweisen. Diese sind ist der libmysql50.dll nicht drin. Vermutlich liegt dort auch das Problem begraben, dass das Programm in der dll nicht das findet worauf es verweisen will ( mal ganz Laienhaft ausgedrückt ) Die Variante mit old_passwords ist mir gestern auch eingefallen, Problem da ist nur, dass der Webhoster mitspielen muss. Nur was passiert am PHP 5.4? Da wird old_passwords nicht mehr unterstützt.

Neu entwickeln: Ja, klar...Jemand hier, dass ein Angebot macht? :)

Grüße

Sir Rufo 16. Dez 2014 08:24

AW: MySQL Verbindung // Datenbankabgleich
 
Mit den Vorgaben wohl niemand oder nur mit einer astronomisch hohen Summe, die im Bedarfsfall nach unten korrigiert wird.

Das Schreiben auf einen MySQL (bzw. besser ein PHP-Skript, dass das Schreiben übernimmt und das Ausleseprogramm ruft das PHP-Skript auf) ist nicht das Problem, sondern das Auslesen des Daten-Loggers.

Was hast du denn da für Beschreibungen, wie man an die Daten von dem Logger kommt?

Starfunk2208 16. Dez 2014 08:30

AW: MySQL Verbindung // Datenbankabgleich
 
ich könnte das Handbuch anbieten, da ist es ziemlich offen beschrieben wie Daten gespeichert sind und wie diese abzuholen sind...

Neumann 16. Dez 2014 11:55

AW: MySQL Verbindung // Datenbankabgleich
 
Ich hätte da etwas, was Abgleich von Firebird zu MySql macht. Könnte ich ev. kostengünstig so anpassen, dass auch Daten aus Paradox-Tabellen
an Mysql geschickt werden. Funktioniert mit Direktverbindung zu Mysql oder über Http-Tunnel.

Bei Interesse bitte private Nachricht schicken.

WoGe 16. Dez 2014 15:26

AW: MySQL Verbindung // Datenbankabgleich
 
Da ich mich immer versucht fühle an den Spruch
"Never Change a running System"
zuhalten:
Einen alten MySql-Server entweder auf dem Rechner des Loggers installieren oder in einer VM.
Und dann in einem 2ten Schritt die Daten auf den Ziel-SQL-Server zu transferieren.

Bei einigen wenigen 10.000 Datensätzen stellt das ein gangbares Szenario dar. Bei größeren Datenmengen kann das allerdings nicht mehr empfehlen.

Gruß
wo


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:40 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz