Andreas Korthaus: Schnittstelle lokal und Internet-Server

Beitrag lesen

Hi Michael!

Erstmal vielen, vielen Dank für die beiden super-ausführlichen Antworten!
Aber zunächst muß ich einen wichtigen Unterschied zwischen uns beiden herausstellen: Du verfügst über sehr viel Erfahrung auf dem Gebiet, außerdem kennst Du zig Programmiersprachen, könntest Dir wenns sein muß wahrscheinlich auch mal eine "so eben" aneignen, das ist bei mir anders. Ich hab noch nie sowas gemacht und kann nur PHP und das auch nur sehr begrenzt, aber ich könnte nicht mal eben auf PERL/C/VB... ausweichen! Bei mir ist PHP so zu sagen eine Restriktion! Und wenn irgendwein Feature damit nicht realisierbar ist(was ich nicht glaube) muß darauf erstmal verzichten.

Zur Aufgabe: Ich hatte die fürs erste etwas außen vor gelassen, da es mir nur auf die Komunikation zw. lokal und Webserver ankam, aber Du hast Recht, die Angabenstellung braucht man.
Da die "Endlösung" (kpl. Synchronisation, d.h. ein paar mal am Tag per Knopfdruck alle Tabellen der Datenbank miteinander abgleichen, genaueres später!) meine PHP-Kenntnisse vor arge Probleme stellte, war ich halt erstmal mit einer einfacheren Lösung zufrieden, in der einfach einige Tabellen nur in eine Richtung aktualisiert wurden - da wurden die halt auch dem entsprechend nur verändert.
Im Detail soeht das so aus, das der DB-Server im Internet neue Einträge über das Internet erhält, aber keine Änderungen erfolgen, die neuen Datensätze sollen auf die Lokale DB übertragen werden, wo dafür alle Datensätze verändert werden können, und die geänderten sollen aktualisiert werden.
Zur zeit behelfe ich mir damit, das ich in jeder Tabelle einen timestamp habe, und sowohl auf Server und Client den letzte Synchronisationszeitpunkt in einer Tabelle logge, und bei der nächsten Synchronisation alle Datensätze, die nach der letzten Synchronisation laut Timestamp verändert - je nachdem - per Update oder Insert entsprechend einfüge. Ist bei vielen tabellen wohl recht kompliziert.
Also zusammengefaßt: Im Internet kommen neue Datensätze, die auf dem lokalen Recvhner eingefügt werden sollen, und auf diesem rechner führe ich änderungen durch,  die ins Internet sollen. Außerdem können auch lokal Datensäzue eingefügt werden, das mache ich dann mit einer eigenen Datensatz ID auf dem Client, zusätzlich zu dem Webserver im Internet.
Der Internetserver ist wie gesagt ein gehosteter Webserver, habe also begrenzte Rechte, lokal gehe ich über einen Route, der Anfragen an den Port 80 auf dieser IP an den Apache im LAN weiterleitet, wo dann die Abfragen vom entfernten Webserver aus ausgeführt werden.
Besteht so überhaupt die Möglichkeit sowas mit MySQL - Tools zu machen?
Meine Variante läuft halt in PHP. Jetzt hatte ich halt überlegt, ob ich die Abfragen, die ich sonst direkt quer über das Netz ausführe, ob ich die nicht mit einer Socket-Verbundung im POST Header in einem Arrray verschicke, und so nur auf dem jeweiligen Server ausführe. Ist das wohl besser/sicherer?

Sorry, etwas wirr, aber ist sehr kompliziert und etwas spät:) Zu den anderen Sachen schreibe ich dann morgen was!

Grüße
  Andreas