Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWünsch Dir wasWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst ACCESS Dateien synchronisieren

Mitglied: gnarff

gnarff (Level 2) - Jetzt verbinden

04.04.2009, aktualisiert 15.04.2009, 16157 Aufrufe, 6 Kommentare

Hallo Allerseits,

zwei Rechner, zwei *mdb-Dateien.

Diese sollen am Ende eines Tages synchronisiert werden, damit beide Benutzer stets ueber die gleichen Datensaetze verfuegen.
Dummerweise handelt es sich um eine VB-Applikation die auf MS ACCESS 97 basiert, auf den Rechnern arbeitet jedoch ACCESS 2003. Daher bin ich ein wenig zurueckhaltend, dies mit ACCESS Bordmitteln zu loesen; dies ist uebrigends auch der Grund fuer diesen Thread - Sync Threads gibt es ja eigentlich schon genug auf administrator.de
Hat jemand einen Vorschlag, wie das zu loesen waere??
Toolvorschlaege ebenfalls willkommen...

Allerdings kommt mir grad in den Sinn, wenn nun beide Benutzer jeweils einen Datensatz mit der gleichen Nummer anlegen, aber unterschiedlichen Inhalt hat, dann duerfte ich ja mit der SYNC-Idee nicht allzuweit kommen.

saludos
gnarff
Mitglied: 60730
04.04.2009 um 20:24 Uhr
Servus,

per Tool - wüßte ich echt nicht - wie das "gut" geht.

Am einfachsten - ungetestet - würde ich folgenden Ansatz mal durchspielen.

Ich denke, das ist dann selbsterklärend und braucht keine Rems
Das einzigste, was noch fehlt, ist dann der Abgleich der beiden DBs untereinander.
Am einfachsten per At Befehl beide Systeme nachts gleichzeitig starten und die neuere DB auf den anderen kopieren und Shutdown.

Gruß
Bitte warten ..
Mitglied: SarekHL
04.04.2009 um 21:07 Uhr
Das einzigste, was noch fehlt, ist dann der Abgleich der beiden DBs untereinander.
Am einfachsten per At Befehl beide Systeme nachts gleichzeitig starten und die neuere DB auf den anderen kopieren und Shutdown.

Ist das ein Witz??

Ich starte Datenbank A um 8 Uhr, arbeite den ganzen Tag darin, und schließe sie um 18 Uhr. Ich starte Datenbank B um 19 Uhr, ändere kurz eine Telephonnummer und schließe sie gleich wieder. Wenn ich jetzt die neuere Datenbank (nämlich B) nachts zur neuen Grundlage auf beiden Rechnern mache, ist alles, was ich den ganzen Tag über in A gearbeitet habe, futsch.

Aber wozu überhaupt etwas abgleichen, wenn ohnehin beide über das Netzwerk in der gleichen Datenbank arbeiten. Denn das schlägst Du mit Deinem VB-Code doch vor, oder habe ich da was falsch verstanden?
Bitte warten ..
Mitglied: Biber
04.04.2009 um 21:50 Uhr
Moin gnarff,

ich schließe ja selten die Möglichkeit einer Lösung aus, aber in diesem Falle, unter den genannten (bzw. vermuteten) Rahmenbedinungen...
  • Zwei lokal/absolut asynchron über eine bonbonbunte Klicki-Bunti-Oberfläche gepflegte Datenbestände, an denen jeden Tag neue Datensätze hinzukommen
  • aber wo beide BearbeiterInnen alle Datensätze sehen und ändern dürfen/sollen
  • bei der ihr die Appz/die GUI nicht anpassen könnt
  • und wo auch das Tabellendesign (insbesondere Primary Keys) tabu ist

--- wo ihr also letzten Endes eine Replikation zaubern wollt (oder meinetwegen Synchronisation) OHNE die ersten Schritte machen zu können, nämlich
  • die Änderung einer der MDBs auf eine Master-Rep-DB
  • und OHNE die Trennung von Appz und Daten in mehrere MDBs
  • und OHNE die Erweiterung des Datenmodells um ein paar GUIDs und MandantenIDs und Timestamps....

... hey, wenn ihr diese Aufgabe in Eigenentwicklung zusammenklöppeln wollt, dann ist bei Fertigstellung ein neues ACCESS 97 auf dem Markt.
... obwohl, falls M$ bei den vierstelligen Versionsnummern bleibt, dann heißt es anders.

--> Abgesehen davon noch der Einwand: Alles, was in Richtung "Replikation" geht, setzt eigentlich eine direkte Rechnerverbindung voraus (Lan, Internet, whatever..).
Wenn diese da ist, warum dann nicht EINE Server-Nur-Daten-MDB und zwei lokale Client-Front-End-Nur-GUI-MDBs?

--> Falls es überhaupt ein Tool gibt, dass Dir weiterhelfen könnte, dann müsste es auf dieser Seite geben
  • Trigeminal - Tools . Und denk jetzt nicht, es ginge auf dieser Seite um Probleme mit Gesichtsnerven. Da wohnt einer der deutschen Access bzw JET-Engine Päpste Micha Kaplan
  • eine Seite mit vielen Links zu Access-Repllikation ist auf jeden Fall schwerinsoft
  • Grundlagen speziell für ACCESS97-Replikation vom sympathischen PraktikantInnen-Beschäftiger FAQ-97-Repl
--> dennoch: das höchste der Gefühle, was ich bei der unterstellten Konstellation für machbar halte, ist ein Synchronisieren der beiden MDBs über Daten-Export und selbst implementiertem Datenabgleich in eine DRITTE (reine Daten-)MDB und anschliessendem Re-Import des neuen Datenbestandes in die beiden Front-End-MDBs.

--> und auch das ist eher indiskutabel, wenn die Clients nicht mal jeweils zwei in GUI und Daten getrennte Mdbs haben.

---> wenn alles unzumutbar ist und ihr eine mandantenfähige Client/Server-Appz braucht, dann steigt auf eine um. Sorry. Manche Sachen lassen sich nicht glaubwürdig nachstellen.
Oder kam Deiner Erinnerung nach in den Geschichten von "Robinson Cruesoe" oder "Kevin allein zu Haus" irgendwo ein flotter Dreier vor? Und wenn--> hey, es sind nur ausgedachte Geschichten..

Grüße und saludos
Biber
Bitte warten ..
Mitglied: NetWolf
04.04.2009 um 23:49 Uhr
Hallo gnarff,

ich sehe da keinen Grund zurückhaltend zu sein. Man sollte immer vorher eine Datensicherung machen. Dann bist du auf der sicheren Seite und hast keine Probleme, wenn mal was schief geht.

Grundsätzlich ist dir klar, dass du ggf. damit das komplette Programm himmelst? Je nach Art der Programmierung und Definition der Indexe/Schlüsselfelder kann es zu Inkonsistenzen kommen.

Da es sich anscheinend um eine Front- Backend -Lösung handelt, würde ich das Backend auf einen Server legen und von beiden Clients darauf zugreifen. Das ist auf jeden Fall besser, als eine Synchronisation.

btw sind mir in den letzen 10 Jahren keine Tools untergekommen die sowas für dich erledigen könnten!


Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)
Bitte warten ..
Mitglied: 60730
05.04.2009 um 13:43 Uhr
Zitat von SarekHL:
Ist das ein Witz??

Servus, nein das ist der Punkt "ungetestet"


Ich starte Datenbank A um 8 Uhr, arbeite den ganzen Tag darin, und
schließe sie um 18 Uhr. Ich starte Datenbank B um 19 Uhr,
ändere kurz eine Telephonnummer und schließe sie gleich
wieder. Wenn ich jetzt die neuere Datenbank (nämlich B) nachts
zur neuen Grundlage auf beiden Rechnern mache, ist alles, was ich den
ganzen Tag über in A gearbeitet habe, futsch.

Wenn ich dein Vorhaben richtig verstanden habe - es gibt nur 2 Systeme?

Aber wozu überhaupt etwas abgleichen, wenn ohnehin beide
über das Netzwerk in der gleichen Datenbank arbeiten.

Weil evtl. nicht sichergestellt ist, das RechnerX immer der erste ist, der an ist

Denn das schlägst Du mit Deinem VB-Code doch vor, oder habe ich da was
falsch verstanden?
Yupp - ist kein vbs - sondern bätch und auch nur ein Teil - der andere (für den anderen Rechner müßte ja auf RechnerY gemünzt werden)

Ergo - entweder 3. Rechner (Server) -oder WOL fähige Systeme vorausgesetzt...

Wenn RechnerX nicht an ist und von RechnerY auf die DB zugegriffen werden soll, dann WOL an RechnerX senden - warten bis er da ist und dann dort die DB starten.


Immer noch besser, als den Kram zu teilen - und die Tabellen in eine gespiegelte MYsql zu überführen - da bist du mit einem kleinen gebrauchten 3. Rechner preiswerter unterwegs.

Gruß
Bitte warten ..
Mitglied: gnarff
05.04.2009 um 19:48 Uhr
Die Ueberschrift ACCESS Dateien synchronisieren laesst den augenweitenden Rueckschluss zu, dass hier jemand versucht alles so zu machen wie es nicht zu sein hat, naemlich eine Arbeitsumgebung zu schaffen, wo die DB-Benutzer ueber simples Filesharing auf die Applikation zugreifen was der Garant fuer zukuenftige Probleme ist.

Eine DB hat in Frontend und Backend gesplittet zu werden, das haette ich auch mit groesstem Vergnuegen gemacht, wenn die VB-Applikation sich nicht ACCESS '97 sondern ACCESS 2003 bedient haette.
97 kann nicht mit 2003 und vizeversa, man muss also konvertieren. Das Konvertieren haette aber die Gefahr mitsich gebracht, dass die Appliaktion nicht mehr ordnungsgemaess gelaufen waere; wie Netwolf das schon richtig angemerkt hatte.

Es hagelte schon bei normaler Benutzung bestaendig VB-Laufzeitfehlermeldungen (53) und Can't Show Non-Modal Form where modal Form is expected (401) weil imho der timer loop frunzig programmiert wurde.

Wie auch immer, ich habe das Problem wie folgt geloest:
- Jeder Rechner hat die komplette Applikation installiert bekommen.

- Auf Rechner 1 laeuft sie auf C:
- Ordner auf C: im Netz freigegeben
- Da Rechner 1 sich bestaendig weigerte mit normalen calls auf sich zugreifen zu lassen und in der Netzwerkumgebung von Rechner 2 angezeigt zu werden, habe ich die Verbindung einfach erzwungen und die Dateneingabe von Rechner 2 auf Rechner 1 umgeleitet; mit \\ip_Rechner 1\pfad_zum_mdb_bak-file

Das ist nicht sonderlich performant, der Refresh dauert ewig, aber es funktioniert...

Der Rechner 1 mus z.Zt. noch immer eingeschaltet und die Datenbank geladen sein, damit auf Rechner 2 gearbeitet werden kann.
Ich glaube mich aber vage daran zu erinnern, dass man die Formulardaten in einem Cache zwischenspeichern kann und man es so einrichten koennte, dass diese uebernommen werden sobald die DB auf Rechner 1 wieder online ist - daran arbeite ich gerade.

Was die Robinson Crusoe und den flotten Dreier anbetrifft, so kann ich mir vorstellen, dass da die eine oder andere unschuldige Ziege dafuer herhalten musste...bei Kevin bin ich mir allerdings sicher, sonst haette der Film ja "Kevin und Freitag und eine Ziege allein zu Haus" geheissen...

Saludos
gnarff
Bitte warten ..
Ähnliche Inhalte
Datenbanken
MS Access MDB Datei analysieren
Frage von greatmgmDatenbanken5 Kommentare

Hallo zusammen, bei der Analyse einer mdb-Datei geht es mir vor allem darum welche Objekte welchen Speicher innerhalb der ...

Datenbanken

Access Datenbank Datei ändern und auf andere Dateien anwenden

Frage von MetamorDatenbanken4 Kommentare

Hallo, eine Access Datenbank soll entwickelt werden, dann kopiert und jede für sich benutzt werden, mit eigenen Datensätzen. Soweit ...

Datenbanken

Access 2016 vertauscht Monat und Tag in meiner CSV Datei

Frage von iGordonDatenbanken1 Kommentar

Hi, ich habe ein Problem und hoffe etwas Hilfe zu bekommen. Ich arbeite mit Access 2016. Ich habe eine ...

Microsoft Office

Automatischer Datenimport aus csv Datei in Access DB - Wo zu ändern?

Frage von Mejestic12Microsoft Office2 Kommentare

Hallo, ich habe von einem Kollegen (der ist kurzfristig Langzeitkrank geworden) eine Access DB übernommen. Leider gibt es dazu ...

Neue Wissensbeiträge
Humor (lol)
BioShield gegen 5G
Information von magicteddy vor 2 StundenHumor (lol)3 Kommentare

Moin wer sich gegen die hochgefährlichen 5G schützen möchte wird hier fündig: 5GBioShield "gegen 5G-Strahlung" Ich glaube, ich sollte ...

Windows Server

ScheduledTasks mit einem Group-Managed-Service-Account (GMSA) ausführen

Anleitung von ToniHo vor 3 StundenWindows Server

Hallo zusammen, wer schonmal versucht hat ein Group-Managed-Service-Account (GMSA) auf einem bestehenden ScheduledTask einzutragen, ist an der GUI vermutlich ...

Hardware
Raspberry mit 8 GB
Information von sabines vor 15 StundenHardware

Der Raspberry ist nun nach der 4 GB Variante mit 8 GB verfügbar, und demnächst soll es auch eine ...

Sicherheits-Tools

Erfahrungsbericht - TrendMicro WFBS Advanced v10.0 (aktuelles Patchlevel) und neues Windows 10 2004 als Funktionsupgrade

Information von VGem-e vor 1 TagSicherheits-Tools4 Kommentare

Servus Kollegen, grad bei einer Außenstelle mit TrendMicro WFBS Advanced v10.0 das Funktionsupgrade für Windows 10 2004 testweise in ...

Heiß diskutierte Inhalte
Tipps & Tricks
Kostenlose alternative zu Teamviewer
Frage von andyw5Tipps & Tricks21 Kommentare

Moin an alle, kann mir jemand eine kostenlose einfache alternative zum Teamviewer/Fastviewer nennen? Wie möchten einen PC Win7/10 aus ...

Windows 10
Windows 10 Version 200"4"
gelöst Frage von SarekHLWindows 1019 Kommentare

Guten Morgen zusammen, weiß jemand, wann das MediaCreationTool für die Version 200"4" veröffentlicht wird, oder wo man es evtl. ...

Drucker und Scanner
HP LaserJet 2300 schmiert bzw hat einen Streifen
Frage von r2d2r3poDrucker und Scanner17 Kommentare

Hallo, ich vermute hier ist die Heizeinheit defekt. Der Ausdruck hat auf der einen Seite einen streifen Kann das ...

LAN, WAN, Wireless
Sophos UTM AP Load auslesen
gelöst Frage von Ex0r2k16LAN, WAN, Wireless15 Kommentare

Moin, gibt es (vielleicht per Shell?) irgendwo die Möglichkeit die WLAN AP Load festzustellen? Gruß Ex0r