![]() |
Datenbank: MySql • Version: ? • Zugriff über: mysql.pas
Zugriff auf MySQL mit der MySQL
Sorry ich muss doch hier schreiben, in dem Tutorial schaut eh keiner rein.
Es geht um das ![]() Zugriff auf MySQL mit der MySQL-C-API ich lese mich gerade da ein und hätte eine Frage. Da ich keine locale MySql Datenbank habe sondern meine liegt auf einen Root Server im Internet, ich möchte diese aber nicht frei nach außen schalten deswegen versuche ich es über eine tunnel.php Verbindung konnte ich aufbauen. Aber wie geht es weiter, mit php habe ich es nicht so :-) gibts da was fertiges ? Oder könnte mir jmd mit dem tunnel.php helfen, wäre nett von euch mfg
Delphi-Quellcode:
<?php
error_reporting(E_ALL); $server = $_POST["server"]; $user = $_POST["user"]; $pass = $_POST["pass"]; $db = $_POST["db"]; $sql = $_POST["sqlquery"]; //Verbindung zur Datenbank conn = mysqli_connect ($server, $user, $pass, $db); $conn = mysqli_connect($server, $user, $pass); if ($conn!=TRUE) { print_r( $conn); } ?> |
AW: Zugriff auf MySQL mit der MySQL
Ab dieser Stelle könntest Du jetzt die Ergebnismenge in PHP aufberetite/verarbeiten/durchiterieren... und als Json Zurückgeben. Diee Rückgabe müsstest Du dann in Delphi wieder verarbeiten.
Du sagst Dein SQL liegt im Internet, hast Du da shell-Zugriff drauf? Dann könntest Du auch versuchen, per Portforwarding Deiner SSH-Sitzung Deinen lokalen 3306 Port auf den Deines Servers "druchzurouten" und könntest dann wieder "normal" Deinen Sql-Server ansprechen ohne den Umweg über eine, wie auch immer geartete, php-Tunnel-Lösung. |
AW: Zugriff auf MySQL mit der MySQL
Zitat:
Habe volle Rechte drauf. mfg |
AW: Zugriff auf MySQL mit der MySQL
Dann ist die Kommunikation über den SSH-Tunnel eine saubere und sichere Sache.
Das läßt sich auch noch per Kommandozeile automatisieren, ich glaube über Plink/Putty. |
AW: Zugriff auf MySQL mit der MySQL
Das bekomme ich nicht hin, davon habe ich keine Ahnung.
mfg |
AW: Zugriff auf MySQL mit der MySQL
|
AW: Zugriff auf MySQL mit der MySQL
Zitat:
kann ich auch über putty einen SSH Tunnel aufbauen und solange putty offen ist kann ich auch auf meine Datenbank zugreifen, ist das richtig ? Ich habe eine Anleitung gefunden, tja wie teste ich jetzt ob ich zugriff auf meine Datenbank habe. ![]() mfg |
AW: Zugriff auf MySQL mit der MySQL
Zitat:
[QUOTE=Schuby;1460926] Zitat:
* einen mysql-Benutzer erstellen, der sich von localhost anmelden darf * ssh-verbindung inkl. tunnel von Deinem lokalen 3306 auf den remote (das ist dann localhost vom Server) 3306 einrichten * mit delphi und den Zugriffskomponenten Deiner Wahl einen Connect auf den Datenbankserver unter der Adresse localhost und den Zugangsdaten, die Du oben eingerichtet hast, durchführen |
AW: Zugriff auf MySQL mit der MySQL
Hallo
einen MySql Benutzer habe ich angelegt. Mit dem komme ich auch in putty rein //MariaDB [(none)]> soweit so gut, aber in putty den befehl eingeben haut nicht hin jedenfalls die Befehle die ich gefunden habe um einen Tunnel bereit zu stellenm ich denke es liegt daran das mein ssh nicht auf 22 läüft sondern viel höher 44422. Und dann noch was, ich habe ein Public Key Authentifizierung.! mfg |
AW: Zugriff auf MySQL mit der MySQL
Liste der Anhänge anzeigen (Anzahl: 1)
Das hat erst mal nichts mit Deinem ssh-Port zu tun.
Anbei mal ein Bild, das zeigt wo Du wie die Porteinstellung in Putty vornimmst. Aber zuerst mal meldest Du dich mit ssh auf deinem Server an und dann kannst Du Deinen neuen mysql (mariadb) zugangsdaten testen. Wenn das soweit klappt, dann trag mel den tunnel in Putty ein und dann kannst Du den Zugang von Delphi aus testen. Die publickey Authentifizierung stört nicht. |
AW: Zugriff auf MySQL mit der MySQL
Hallo stifflersmom
genau das habe ich auch gemacht.. aber ich habe mir Heidisql.exe gesaugt und konnte damit auf meine Datenbank sofort zugreifen, jetzt versuche ich über Delphi eine Komponente zu finden mit der ich die Datenbank ansprechen kann. Ich hoffe das heidisql.exe den tunnel auch für mein delphi aufgemacht hat, oder nur für sich? ne glaube ich nicht :-) ich versuche jetzt mal mit delphi kontakt zu bekommen. ich dachte an TSQLConnection1 mfg |
AW: Zugriff auf MySQL mit der MySQL
Nun, welche Komponente Du nutzen willst hängt von Dir, Deiner Delphiversion ab.
Ich persönlich nutze die Komponenten von microOLAP und bin ganz zufrieden. |
AW: Zugriff auf MySQL mit der MySQL
Hallo stifflersmom,
also ich habe jetzt 2 Programm die auf meine externe mysql zugreifen können. 1. Heidisql.exe 2. MySQLWorkbench.exe 3. putty.exe In putty komme ich auch auf die mysql daten. mysql -u [Benutzer] -p Aber über Delphi der SQLConnection1 komme ich einfach nicht drauf. SQLConnection1 sagt immer Benutzer oder Passwort falsch. mfg |
AW: Zugriff auf MySQL mit der MySQL
Wenn Du mit HeidiSQL und der Workbench über localhost und den somit angelegten Tunnel auf die extene Datenbank zugreifen kannst,
dann muss der Fehler in Deiner Konfig in Delphi liegen. Evtl. falsche libmysql.dll im Suchpfad? Oder hast Du vielleicht noch einen lokalen mysql-Server laufen und das nur vergessen, und mit Heidi und der Workbench greifst Du auf diese Instanz zu? |
AW: Zugriff auf MySQL mit der MySQL
Das ist es was ich nicht verstehe, wenn HeidiSQL und auch Workbench auf meine externe Datenbank
über localhost zugreifen kann, warum das mein Delphi Programm nicht, HeidiSQL und auch Workbench habe ich geschlossen und xampp installiert, auch hier sagt mein SQLConnection1 Benutzer oder Passwort falsch wenn ich auf die localhost Datenbank von xampp zugreifen möchte. Bei HeidiSQL und auch Workbench muss man den ssh Tunnel selber eingeben, die erstellen selber einen ssh tunnel, da braucht man putty nicht mehr. Also müsste doch dann für andere Programme der tunnel offen sein. Halt... das fällt mir gerade ein.. Ich starte HeidiSQL mit tunnel und dann Workbench ohne tunnel nur mit localhost mal sehen ob ich drauf komme. ansonsten kann das nur noch an mein Delphi config dll liegen. mfg |
AW: Zugriff auf MySQL mit der MySQL
So ich habe es gerade getestet.
HeidiSQL habe ich mit ssh Tunnel gestartet und komme drauf. Dann habe ich Workbench ohne ssh Tunnel gestartet und komme auch auf meine Datenbank auf meinen RootServer local drauf. Jetzt kann ich sagen das der Tunnel über localhost steht. Es muss an mein delphi liegen. mfg |
AW: Zugriff auf MySQL mit der MySQL
Ehrlich gesagt, kann ich mich nur noch dunkel an die Zeit erinnern, als der ich es mit Bordmitteln von Delphi versucht habe mit einer Mysql-Instanz zu verbinden.
Und ich glaube, wenn ich es überhaupt hinbekommen habe, es war ein ziemliches Gefrickel mit der passenden dll zur im Objektinspektor ausgewählten mysql-Version. Iirgendwie bin ich dann zu microOLAP gekommen und habe es nicht bereut. Kostet zwar ein paar Euro, aber die die sind es wirklich wert. Wenn Du die mal ausprobieren möchtest, es gibt eine Testversion zum runterladen: ![]() |
AW: Zugriff auf MySQL mit der MySQL
Oh da gibts aber viel zu saugen, kannst du mir den namen sagen ?
Ist das diese [DAC for MySQL Without Sources] ? mfg |
AW: Zugriff auf MySQL mit der MySQL
Liste der Anhänge anzeigen (Anzahl: 1)
Lieber stifflersmom ich muss mich bei dir für die Hilfe bedanken.
Du hast mir wirklich geholfen. Habe die Testversion gesaugt / Installiert / und SOFORT auf die Datenbank gekommen. Danke. mfg |
AW: Zugriff auf MySQL mit der MySQL
Na dann, viel Spaß!
|
AW: Zugriff auf MySQL mit der MySQL
Ist vielleicht schon erledigt, aber als alternative könntest Du vielleicht Wordpress installieren.
Das bringt schon eine REST-API mit, und die könnte man erweitern. Der Vorteil: Wordpress hat schon Konzepte für Ahthorization, etc. mit drin, und ist eigentlich relativ schlank. ![]() |
AW: Zugriff auf MySQL mit der MySQL
Zitat:
So wie ich die sache sehe brauche ich die richtige dll Datei für meine MySql Datenbank im Internet. mfg |
AW: Zugriff auf MySQL mit der MySQL
Es kann so einfach sein wenn man weiß wie...
Die libmysql.dll in Embarcadero\RAD Studio\9.0\bin64 und dann hat es auch sofort hin. mfg |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz