Gurki Geschrieben 4. März 2011 Geschrieben 4. März 2011 Hallo, ich möchte eine Anwendung schreiben, die keine locale Datenbankverbindung aufbaut, sondern eine über das Internet auf einen FTP Server. Ist das möglich? Also verständlicher: Eine Applikation hat Daten, die in eine Datenbank gespeichert werden soll. Diese Datenbank (ist ja meist MySQL) liegt auf einem Webserver (ähnlich wie solche Datenbank hier für das Forum) und soll halt dementsprechend aktualisierungen durchführen. Nun ist die Frage; Ich muss ja vorher eine Verbindung zu dem FTP Server aufbauen und DANN eine Verbindung zur Datenbank oder? Wie realisiere ich sowas am bessten? Zitieren
uenetz Geschrieben 4. März 2011 Geschrieben 4. März 2011 zuerst musste ich mal lachen, als ich Deinen Beitrag im Fachinformatiker-Forum gelesen habe ;-) Also: Du weisst dass FTP == File Transfer Protocol ist? Und man damit keine Verbindung zu einem RDBMS aufbauen kann? Weil u.a. ... FTP == Port 21 und MySQL Port 3306 Aber es gibt eine ODBC-Schnittstelle, die kann man nutzen ;-) Such einfach mal bei Tante Google nach "odbc microsoft mysql" oder so. Na denn mal viel Erfolg! Zitieren
HJST1979 Geschrieben 4. März 2011 Geschrieben 4. März 2011 Hallo, habe so etwas selbst noch nicht gemacht, mich aber schon ein wenig damit Beschäftigt. Ich würde wie folgt vorgehen. 1) Webservice Programmieren der mit Parametern gestartet werden kann und dir dann Daten per XML zurückliefert 2) In VB.NET eine Schnittstelle zum Webservice Programmieren 3) In VB.NET den Webservice ansprechen und XML- Daten auswerten. Worauf du natürlich achten musst, ist dass der Webservice nicht von "jedem" aufgerufen werden kann. Thema "Sicherheit" Gruß Hans-Jörg Zitieren
Gurki Geschrieben 4. März 2011 Autor Geschrieben 4. März 2011 zuerst musste ich mal lachen, als ich Deinen Beitrag im Fachinformatiker-Forum gelesen habe ;-) Wieso? :confused: Also: Du weisst dass FTP == File Transfer Protocol ist? Und man damit keine Verbindung zu einem RDBMS aufbauen kann? Weil u.a. ... FTP == Port 21 und MySQL Port 3306 Ok wieder was gelernt. Frage ist nur; man muss doch einen Serverpfad angeben um auf die DB zuzugreifen? Aber es gibt eine ODBC-Schnittstelle, die kann man nutzen ;-) Such einfach mal bei Tante Google nach "odbc microsoft mysql" oder so. Na denn mal viel Erfolg! Ok werde mal schauen. Ist es denn ähnlich wie mit einer localen DB? Oder ist das ganze doch bisschen "schwieriger"? Zitieren
uenetz Geschrieben 4. März 2011 Geschrieben 4. März 2011 Bei Deiner Fragestellung ist mir nicht ganz klar was Du überhaupt und genau machen möchtest. Daher werfe ich einfach mal das Thema Replikation in den Raum. Informationen dazu findest Du z.B. hier. Viel Erfolg! Zitieren
Klotzkopp Geschrieben 4. März 2011 Geschrieben 4. März 2011 Ist es denn ähnlich wie mit einer localen DB? Oder ist das ganze doch bisschen "schwieriger"?Üblicherweise ist die Netzwerkschnittstelle des Datenbankservers aus Sicherheitsgründen nicht für Zugriffe von außen konfiguriert, d.h. du sollst gar nicht über das Internet direkt auf die Datenbank zugreifen können. Es muss also eine zusätzliche serverseitige Software zum Einsatz kommen. Sei es nun ein Webservice, ein anderes Frontend oder dass du einen Tunnel aufbaust. Zitieren
lilith2k3 Geschrieben 4. März 2011 Geschrieben 4. März 2011 Windows Communication Foundation Das sollte die richtige Anlaufstelle sein Zitieren
Gurki Geschrieben 4. März 2011 Autor Geschrieben 4. März 2011 Bei Deiner Fragestellung ist mir nicht ganz klar was Du überhaupt und genau machen möchtest. Daher werfe ich einfach mal das Thema Replikation in den Raum. Informationen dazu findest Du z.B. hier. Viel Erfolg! Also: Ich habe eine Applikation, die auf die Remote DB zugreifen soll. So eine DB ist ja meist eine *.sql DB wie sie hier auch in diesem Forum vorhanden ist. D.h. Das Forum greift ja auf die DB zu um die Daten hier abzubilden. Nun möchte ich aber mit meinem Programm auf solch eine DB zugreifen um auf der Datenbank dann Daten speichern und abrufen zu können. Diese Daten sollen dann auf eine php/html Seite angezeigt werden. Dies natürlich frei zugänglich. Zitieren
Klotzkopp Geschrieben 4. März 2011 Geschrieben 4. März 2011 Das Forum greift ja auf die DB zu um die Daten hier abzubilden.Die Forensoftware läuft aber auf demselben Rechner wie die Datenbank. Remote ist die Kommunikation zwischen der Forensoftware und deinem Browser. Die Datenbank ist lokal. Zitieren
Gurki Geschrieben 4. März 2011 Autor Geschrieben 4. März 2011 Ja, aber es muss doch irgendwie möglich sein, auf die DB von "außen" zuzugreifen? Zitieren
Gurki Geschrieben 4. März 2011 Autor Geschrieben 4. März 2011 Ok wie "uenetz" schrieb, kann man wohl die ODBC Connection benutzten. Werd ich mich mal rein lesen. Zitieren
HJST1979 Geschrieben 4. März 2011 Geschrieben 4. März 2011 Wird nicht gehen beachte: Üblicherweise ist die Netzwerkschnittstelle des Datenbankservers aus Sicherheitsgründen nicht für Zugriffe von außen konfiguriert, d.h. du sollst gar nicht über das Internet direkt auf die Datenbank zugreifen können. Ich kann mir nicht vorstellen das ein Webspace- Anbieter diese Sicherheitslücke öffnet ;-) Gruß Hans-Jörg Zitieren
uenetz Geschrieben 5. März 2011 Geschrieben 5. März 2011 ich nenne mal eine Möglichkeit die mir so auf Anhieb einfällt. 1. ein MySQLDump der DB in einen passwortgeschützen Bereich des Webspace schreiben. 2. Den MySQLDump per FTP / HTTP auf den lokalen Rechner transferieren. 3. Diesen Dump schliesslich in das lokale RDBMS (MySQL) importieren. Das heisst aber im Klartext, daß die Inhalte der Datenbank auf dem lokalen System denn immer wieder vor dem Import gelöscht werden müssen. So, mit noch verschlafenen Augen sage ich mal, daß eine echte Aktualierung der Daten, respektive Datenabgleich nicht möglich ist. Eine bessere Lösung meines Erachtens wäre (so aus dem Bauch heraus): Sich einen eigenen Server zu mieten, auf den man dann per VPN zugreifen kann. Replication einrichten und replizieren. Gruß, uenetz Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.