[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