Synchroniseren van een database op een server

  • Onderwerp starter Onderwerp starter stax
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

stax

Nieuwe gebruiker
Lid geworden
22 apr 2007
Berichten
4
Hallo, we hebben een opdracht gekregen om een database bestand(incidentenbeheer) te synchroniseren op 2 locaties. Er zit ook een server tussen. De database worden in de avond gesynchroniseerd omdat er dan weinig personeel aanwezig is. Nu ismijn vraag hoe kan ik dit het beste doen. De vpn verbinding mag maar 1 keer per dag gebruikt worden.
 
Dat wert niet, want waar zet je de replica op? Het moet via de server gaan en als je van alle 2 een replica maakt op de server en dezelfde naam geeft ,dan krijg je een foutmelding dat die replica al bestaat.
 
Je moet dus in totaal drie databases met elkaar synchroniseren?
Een replica maken was de meest eenvoudige oplossing geweest.

Je kan het ook programmeren. Is dat de bedoeling?

Als je dat wilt kan je in een tabel bijhouden wanneer een database voor het laatst gesynchroniseerd is.
Aan de hand van de wijzigingstijdstippen die je bijhoud bij elk record in elke tabel, kan je je gegevens programmatisch synchroniseren. Als je een andere opossing weet houdt ik me aanbevolen. Voor de oplossing ook trouwens.

Succes!
 
Ik ben er nog steeds niet uit. Kijk je hebt 2 werkstations en een server tot je beschiking. Hiermee moet op de 2 werkstations dezelfde databases komen en deze moeten met elkaar synchroniseren. De server moet er tussen komen en er mag maar 1 x per dag verbinding worden gemaakt om te synchrioniseren.
 
Op de server zet je de master. Dan maak je op de server twee replica's die je vervolgens op de werkstations zet. Ieder één. Kijk voor verdere werk wijze over replica's in de Access Help.

Wil je echter meer controle hebben over de records die je synchroniseert en het hele proces, dan raad ik aan het geheel zelf te doen door gebruik te maken van een timestamp veld en een record in een Parameter tabel waarin staat wanneer voor de laatste keer met welke database is gesynched.

In het eerste geval haak ik af. Ik vind werken met replica's onprettig vanwege de controle die je mist omdat je het uit handen geeft.
In het tweede geval hoor ik je nog wel.

Enjoy!
 
Ik heb het al geprobeerd om 2 replica's te maken maar dan krijg ik een foutmelding dat er al een replica is. Ik kan dus maar een replica maken.

En die 2de oplossing klinkt wel goed maar ik weet niet hoe ik dat verder kan uitvoeren. Ik ben niet een kei in Access vandaar.
 
Ik weet niet hoever we komen. Als het te ingewikkeld wordt moet je het maar zeggen. Ik probeer het simpel te houden.

Alle tabellen die gesynchroniseerd moeten worden, moeten worden voorzien van een timestamp veld. In dat veld moet je de timestamp zetten op het moment dat het record gewijzigd wordt. Zet in een tabel de laatste timestamp waarop gesynchroniseerd is. We noemen deze tabel voor het gemak even de Param tabel. Hierin staan de parameters/settings/instellingen voor je applicatie.
Op het moment dat gesynchroniseerd moet worden dan wordt deze timestamp uit de Param tabel gehaald en vergeleken met de timestamp in de master database op de server. Doe dit per tabel. Als de records in de master nieuwer zijn kopieer die naar je lokale database. Records die lokaal nieuwer zijn kopieer je naar de master op de server.

Hier zitten nog haken en ogen aan maar kijk even hoever je komt. Finetunen kan altijd nog.

Succes!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan