[gull] Réplication de bases Postgresql

Martial Guex m.guex at mutech.ch
Fri Jun 6 02:16:20 CEST 2003


On Thursday 05 June 2003 22:08, Bertrand Zuchuat wrote:
> Bonjour,
>
> Quelqu'un peut-il me dire quel outil utilisé pour faire de la
> réplication de base de données sachant que nous avons du
> "load-balancing" sur deux serveurs web avec deux bases identiques. Je
> dois donc avoir toujours les deux serveurs à jours ?
>
Il existe certaine solutions sous Postgresql et MySQL mais comme l'a fait 
remarquer Marc ces solutions ne sont pas trés fiable. Pour ma part j'utilise 
des triggers Postgresql (INSERT, UPDATE, DELETE) et je log chaques opérations 
avec l'utilisateurs l'effectuant l'op. dans une table (cela me permet du coup 
d'analyser des prob. possible), ensuite j'effectue périodiquement une synchro 
des tables en fonction des logs. Le point important et de créer tous les clés 
servant à référencer un enregistrement de façon unique sur tous les serveur 
de la bd distribuée et de determiner précisement l'ordre de tables à 
synchronisé.
Un solution plus light et de stoquer dans chaque enregistrement un timestamp 
ayant la date et l'heure de la dernière modif ou la création de 
l'enregistrement et de faire des log que des effacements. 
Dans tous les cas il est impératifs d'éviter les relations circulaires comme 
de tblA->tblB->tblC->tblA dans ce cas la le système devient nettement plus 
complexe car l'on doit enregistrer certain données intermédiaires.
Cette solutions permet d'avoir des serveurs stopés temporairement.
Il peut arriver de gros problème en cas d'index unique multiple comme par 
example une liste avec une clé unique classique et une seconde clé unique 
comportant un lien avec un enreg. parent et un position dans la liste, dans 
cette situation vous allez avoir des litiges à résoudre que l'on rencontre 
classiquement dans les cas de données distribuée pouvant travaillé offline. 
Ce problème n'est pas spécifique au bd mais commun à toutes duplications de 
données devant être modifiées à plusieurs endroits qu'ils soient sous forme 
de fichiers, de papiers etc.
Pour plus d'info voir la doc de Postgresql mais leur site est actuellement out 
alors je ne peus pas être plus précis.
Pour simplifier je conseille de faire très attention sur la concéption d'une 
bd qui doit travailler dans un environnement distribué autrement vous risqué 
d'avoir quelques problèmes.
Bonne chance et A+
Martial
-- 
MuTECH, Martial Guex
Rue des Alpes 3
1452 Les Rasses
Switzerland
Phone:+41 (24) 454 46 35
Fax:+41 (24) 454 46 32
Email: m.guex at mutech.ch




More information about the gull mailing list