mfromh
Goto Top

Access-Datenbank auf Web-Laufwerk

Kann ich mit akzeptablen Antwortzeiten auf eine 700MB große Access-DB zugreifen, die auf Internet-Server liegt?

Hallo Forum,

ein Bekannter von mir hat sich für sein Büro vor Jahren eine Access-Anwendung schreiben lassen. Der Programmteil ist ca. 10MB groß, der Datenteil 700MB. Im LAN läuft die Anwendung seit Jahren ohne Probleme im Mehrplatzbetrieb.

Jetzt möchte der gute Mann eine Filiale in einer anderen Stadt eröffnen und sowohl von beiden Büros, als auch mobil aus seine Datenbank zugreifen können.

Ich habe den Datenteil per FTP auf einen Webserver hochgeladen. Das dauert bei ~550 kBit/s Upload ca. 2,5 Std., was als einmalige Aktion unproblematisch ist. Dem FTP-Space habe ich per WebDrive einen Laufwerksbuchstaben verpasst.

Wenn ich das Programm starte, geht das in ~10 sec. erfreulich schnell. Auch das Arbeiten gestaltet sich mit akzeptablen Arbeitszeiten. Aaaaaber: sobald ich das Programm schließe, werden wieder alle Daten hochgeladen, also: 2,5 Std warten ... face-sad(

Sehr Ihr eine Möglichkeit, die Access-Lösung zu retten, oder muss man das auf LAMP-Basis neu programmieren?

Danke im voraus für Eure Tipps.

--
Viele Grüße aus Hannover
MFromH

Content-ID: 141109

Url: https://administrator.de/contentid/141109

Ausgedruckt am: 17.11.2024 um 14:11 Uhr

45877
45877 21.04.2010 um 11:14:39 Uhr
Goto Top
hallo,

bevor du es in LAMP neu machst, schau, dass du es zu SQL konvertierst.

http://office.microsoft.com/en-us/access/HP052730091033.aspx

700MB passen j locker in nen SQL Express der umsonst ist.
maretz
maretz 21.04.2010 um 11:29:22 Uhr
Goto Top
naja - du kannst auch die Daten selbst z.B. zu ner mysql-Db übertragen und dann Access so via odbc umbiegen das es eben darauf zugreifft... dann brauchst du nicht den ganzen frontend-kram neu zu machen... (ich hoffe zumindest das man es kann - je nachdem wie du die Access-DB auslesen kannst und wie weit du dich mit scriptsprachen auskennst)
mfromh
mfromh 21.04.2010 um 11:33:42 Uhr
Goto Top
Hallo,

bräuchte man dafür einen Windows-basierten Web-Server? Oder ist es sinnvoller, die SQL-DB auf einem Office-PC zu installieren und per VPN zuzugreifen?

Ist LAMP nicht doch die die universellere und zukunftssicherere Lösung, schon allein deshalb, weil sie browserbasiert wäre.

--
BFN
Michael
45877
45877 21.04.2010 um 11:39:32 Uhr
Goto Top
Hallo,

ich bin davon ausgegangen, dass ihr eh einen Server (wo jetzt die Acces DB liegt) und ne VPN zwischen den Standorten habt.
Und ob mysql zukunftssicherer als ms sql ist kann dir wohl nur oracle sagen ;)
mfromh
mfromh 21.04.2010 um 14:17:36 Uhr
Goto Top
Danke erst mal für Eure Tipps. Sieht nach Arbeit aus - egal, wie man's angeht. Ich dachte, wo heute alle über Cloud-Computing reden und gerade MS mit seiner Live-Umgebung kräftig am trommeln ist, gäbe es vielleicht eine einfache Lösung, Access zum arbeiten in einer Cloud zu bewegen.
maretz
maretz 21.04.2010 um 16:19:17 Uhr
Goto Top
Juchu - und wieder jemand der dann da lustige Dinge versucht in der Cloud zu machen (weils grad Hype ist?).

Sorry - ich würde dir dringend empfehlen sowas nicht zwingend auf die neuesten Trends zu bringen... Denn da holst du dir schnell mehr probleme mit als nötig -> und in diesem Fall ist das ja doch recht einfach zu umgehen...
mfromh
mfromh 21.04.2010 um 20:07:21 Uhr
Goto Top
Juchu - und wieder jemand der dann da lustige Dinge
versucht in der Cloud zu machen (weils grad Hype ist?).
Ob irgendetwas Hype ist, ist mir wirklich völlig egal. Ich denke lediglich über eine möglichst einfache, will sagen, kostengünstige Lösung nach, die Access-Lösung an unterschiedlichen Standorten zum Laufen zu bringen.

und in diesem Fall ist das ja doch recht einfach zu umgehen...
Welche der vorstehen skizzierten Lösungen würdest Du denn als "recht einfach" ansehen bzw. präferieren? Access-Frontend mit ODBC-Zugriff auf webbasierte MySQL-DB? Access-Frontend mit Zugriff auf SQL-Server über VPN? LAMP-Lösung?
maretz
maretz 21.04.2010 um 22:40:02 Uhr
Goto Top
Moin,

ob eine "Cloud" jetzt kostengünstig ist möchte ich mal dahingestellt lassen...

Welche Lösung ich bevorzugen würde? Uff - DAS is mal ne gute Frage:
a) Access: Da ich persönlich Access nicht mag wäre das schonmal aussen vor. DAS ist aber eine rein persönliche Ansicht und bedeutet nicht das Access (o.ä. Datenbank-Programme) schlecht für sowas sind!
b) PHP/HTML: Wäre eine Option - schön wenn es auf nem Webserver liegt. Hängt vom Programm und dessen komplexität ab. U.a. kann man damit natürlich von nahezu jedem Internetfähigen Endgerät arbeiten. Führt aber (wenn man von Lösungen mittels Ajax u.ä. absieht) zu Problemen wenn man die Datenbank "interaktiv" befüllen will -> d.h. die Möglichen Eingaben auf einer Seite hängen von Dingen ab die auf derselben Seite ausgewählt werden... Dann muss man sich ständig Werte speichern, ...
c) JAVA: Schön wenn man weiss das es sich um normale PCs handelt - dann kann man wunderbar mit JDBC u.ä. an die DB andocken (z.B. gibts für MySQL auch nen Java-Connector). Allerdings ist die Sprache sicher nicht so leicht wie PHP und schon gar keine Klick-Lösung wie bei Access. Dafür hat man aber ne Menge mehr Freiheiten - zumindest wenn man es umsetzen kann. Ebenfalls hat man hier kein Problem damit das man auf Eingaben sehr direkt reagieren kann.
d) DB direkt bearbeiten bzw. Tools nehmen welche das erlauben (ob nun PHPMyAdmin, DB-Manager, Webmin oder was auch immer): Gut wenn man nur ab und an nen kleinen Wert ändern will - ist aber für Anfänger idR. nicht gemacht da die gerne dann auch die DB zerbraten.

Das Problem an der Sache: Was bringt es dir wenn ich sage das ich ne Java-Anwendung bevorzugen würde? Ich kann problemlos eine Anwendung in Java schreiben - die dann unter Linux, Windows o.ä. läuft (und wenn nötig bau ich die auch so das die auf nem Mobil-Telefon mit Java läuft). Das hängt damit zusammen das ich grad viel in Java programmieren darf/muss - d.h. fit in der Sprache bin. Hättest du mich vor nem Jahr gefragt hätte ich dir das auch mit PHP zusammengebraten... Viel intressanter ist doch: Was kannst DU lösen - und was ist für den KUNDEN am Sinnvollsten? Wenn der sich an das Frontend mit Access gewöhnt hat dann bringt es nicht viel wenn du dem jetzt ne schöne Java-Anwendung zusammenbaust. Erstmal muss er dann die Entwicklung bezahlen - und dazu sich noch in ein anderes Programm einarbeiten... Wenn er aber beim Access-Prog eh schon einige Wünsche offen hat - DANN kann man darüber nachdenken... Eine GENERELLE Empfehlung macht daher keinen Sinn -> dann können wir uns auch darüber unterhalten ob nun Linux besser als Windows ist, ob nen MAC besser als ne Dose ist, ob dein Gott besser als meiner ist usw...
mfromh
mfromh 26.04.2010 um 15:44:45 Uhr
Goto Top
Danke erst einmal für Deine ausführliche Antwort.

Klar, hast Du vollkommen recht, dass es nicht *eine* gute Lösung gibt, sondern dass das im Einzelfall von vielen Faktoren abhängig ist, u.a. auch von den Skills desjenigen, der die Lösung schnitzen soll.

Meine Erfahrung ist, dass wir Software-Entwickler oftmals zu schnell den Editor anwerfen und anfangen zu coden, obwohl es für manche Fragestellungen bereits fix und fertige Lösungen gibt. Ich erinnere mich, dass ich vor einiger Zeit aus eine Access-DB nach MySQL konvertieren musste und mir mit CSV-Dateien und fiesem manuellem Gefrickele einen abgebrochen habe, um dann im nachhinein festzustellen, dass es so etwas nettes wie das MySQL Migration Toolkit kostenlos zum Download gibt, und sicher besser und ausgereifter, als ich das manuell gebastelt habe.

Und um das zu vermeiden, habe ich hier einfach mal gefragt ...