Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration PostgreSQL Discussion :

Réplication : Synchrone ou Asynchrone, Symétrique ou non


Sujet :

Administration PostgreSQL

  1. #1
    Nouveau membre du Club
    Réplication : Synchrone ou Asynchrone, Symétrique ou non
    C'est un intitulé pas très clair me direz vous...

    Voici mon soucis :
    - J'ai une machine A sous windows avec PGSQL ( lecture/écriture )
    - J'ai une machine B sous windows avec PGSQL ( lecture/écriture )
    - PKOI pas une 3eme..

    - Puis j'ai un serveur X sous Debian avec PGSQL ( Lecture/écriture )

    A et B ont des bases de données similaires avec tables similaires également.
    L'idée est de faire une réplication de A vers X. C'est même plutôt une copie (fusion ?) car on ne se servira jamais du serveur X s'il y a un crash de A ( pareil pour B ).
    Ensuite de faire une réplication de B vers X, tout en gérant les doublons de A.

    Et ensuite écraser A et B avec X ( car X possède maintenant A et B ).

    Je voudrais en fait que A et B ait le même contenu sans être reliés directement...

    Le tout en temps réel

    M'avez vous compris car c'est assez abracadabrantesque..

    J'ai trouvé pas mal d'informations, mais je voudrais un avis pour me dire si c'est jouable ou pas.

    Autre chose : J'ai pgadmin 4 sur les machines, et donc la possibilité de gérer les "copies" sauvegardes" avec...

    Mes BD ne font que quelques Mo.

    Merci beaucoup de vos réponses !

  2. #2
    Nouveau membre du Club
    Pouvoir gérer tout ça depuis PGADMIN 4 de la DEBIAN

  3. #3
    Nouveau membre du Club
    Bon, je me répond à moi même. C'est à cause des vacances ça !!

    J'ai creusé vers le Dblink, le pg_basebackup, le pg_dump, la replication Slony et Bucardo ( replication asynchrone symétrique),
    Je ne trouve rien...je ne sais pas par ou aller.
    Je continue à chercher.

  4. #4
    Rédacteur/Modérateur

    Bonjour,

    Si j'ai bien compris, ce que vous cherchez plutôt à faire, c'est fusionner deux bases de données dans une nouvelle base.
    Pour cela, la réplication n'est pas la solution à ce problème.
    Il faudrait plutôt creuser du côté des foreign data wrappers, et notamment de postgres_fdw (extension du module contrib) qui permet de relier entre elles des bases PostgreSQL sur des serveurs distants (A, B et X dans votre exemple). Une fois ces trois serveurs interconnectés, vous pourrez transférer A dans X, puis B dans X en gérant les doublons à coups de requêtes SQL...

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  5. #5
    Nouveau membre du Club
    Bonjour,

    Après avoir essayé pas mal de trucs ( 2ndQuadrant, BDR, MMR toutes sortes...), je me suis dirigé vers la solution des FDW ( merci CED ).
    J'arrive à présent à avoir mes tables distantes, modifiées en temps réelles. Ça c'est cool mais il me faut maintenant fusionner mes tables pour n'en obtenir qu'une !
    Y'a t il une commande pour faire cela en temps réel et non faire des requêtes intempestives ?

  6. #6
    Rédacteur/Modérateur

    Non, pas à ma connaissance en tout cas.
    Il va falloir passer par des requêtes "intempestives", comme vous dites...
    Mais à coups de "UNION", "INTERSECT" et "EXCEPT", ça devrait pouvoir se faire.
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  7. #7
    Nouveau membre du Club
    Bonjour,

    Bon, j'y suis arrivé, a coup de CREATE, DELETE, UNION et INSERT INTO !! du PGSQL quoi !
    Merci de m'avoir aiguillé.
    Bonne journée !