Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 7 sur 7
  1. #1
    Invité de passage
    Inscrit en
    février 2011
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : février 2011
    Messages : 3
    Points : 0
    Points
    0

    Par défaut Synchronisation entre 2 bases dynamiques.

    Bonjour à tous et merci d'avance pour ceux qui prendrons le temps de lire l'énoncé du problème.

    Pour le moment la configuration actuelle est la suivante:

    Un serveur d'applications lourdes et un serveur d'application légères (web) écrivent toutes les deux sur la même base de données firebird.
    Jusque là pas de problèmes me direz vous...Mais pour des raisons de sécurité, dont je vais vous éviter les explications, nous devons avoir une base firebird sur chaque serveur.
    En résumé, le serveur d'applis lourdes se sert de toutes les tables de la base.
    Le serveur web n'écrit seulement que sur 15 tables de la bases mais à tout de même besoin du reste pour la consultation et la cohérence des données.
    Si vous préférez, les 15 tables concernées vont êtres modifiées indépendamment sur les 2 bases mais doivent être synchronisées à l'identique régulièrement...
    Aucun problèmes pour synchroniser les autres tables, car elle seront seulement modifiées sur le serveur applis lourdes et répliquées sur le serveur d'applis légères.
    Mais comment fait-on lorsque les 2 bases sont modifiées différemment et que l'on doit les synchroniser?

    Pour le moment j'utilise DBSync for Firebird&MySQL.
    J'ai beau faire toutes les simulations possible avec les INSERT/UPDATE/DROP dans un sens comme dans l'autre, rien de va...
    Le problème parait simple mais dès que vous rentrez dans les simulation vous comprendrez le problème.
    Soit j'ai des données qui restent que je ne veux pas ou alors ça efface ce que je ne veux pas.
    Bref je suis à cours de solution.

    Quelqu'un s'est déjà trouvé face a ce genre de défis?

    Si une personne pouvais m'aider ce serait vraiment bien

    Merci à tous d'avance et n'hésitez pas a me demander des clarifications, pour moi le problème est clair mais je l'ai peut être mal expliqué...

  2. #2
    Membre Expert Avatar de Barbibulle
    Profil pro Frédéric
    Inscrit en
    octobre 2002
    Messages
    1 734
    Détails du profil
    Informations personnelles :
    Nom : Frédéric
    Âge : 44

    Informations forums :
    Inscription : octobre 2002
    Messages : 1 734
    Points : 2 322
    Points
    2 322

    Par défaut

    Bonjour,

    "Il existe une application pour ça" ©

    Cela s'appel de la réplication :

    Uns liste de logiciels :
    http://www.firebirdfaq.org/faq249/

    Un à conseiller en particulier ? oui => http://www.ibphoenix.com/products/software/ibreplicator
    Vous pouvez tester la version d'évaluation qui est juste limitée dans le temps.

    Pour mettre en place ce type de logiciel je vous conseille de bien lire la documentation, afin de préparer votre base à la réplication avant de lancer la période d'évaluation.

  3. #3
    Invité de passage
    Inscrit en
    février 2011
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : février 2011
    Messages : 3
    Points : 0
    Points
    0

    Par défaut

    Bonjour Barbidulle et merci de votre réponse.

    Je suis actuellement en phase de test sur ce logiciel.
    J'ai quelques problèmes à régler avec ce logiciel mais je devrai y arriver.

    En revanche je ne suis pas sur que la réplication soit bidirectionnelle.

    En fait si ça l'est dans le sens où je peux répliquer dans un sens comme dans l'autre mais je ne suis pas certain que cela règle le problèmes des tables qui sont modifiées de chaque côtés...

    Je vous tiens informé.

    merci bonne journée !

  4. #4
    Membre Expert Avatar de Barbibulle
    Profil pro Frédéric
    Inscrit en
    octobre 2002
    Messages
    1 734
    Détails du profil
    Informations personnelles :
    Nom : Frédéric
    Âge : 44

    Informations forums :
    Inscription : octobre 2002
    Messages : 1 734
    Points : 2 322
    Points
    2 322

    Par défaut

    Bonjour,

    D'après ce que j'ai compris on peut avoir du bidirectionnelle.
    D'ailleurs c'est pour ca qu'un role (ou user je ne sais plus) doit être créé pour la réplication cela lui permet de détecter que les mises à jours faite par ce role/user sont issus de la réplication et donc ne sont pas à prendre en compte pour la bidirection. (Sinon ca tournerait sans fin..)

  5. #5
    Invité de passage
    Inscrit en
    février 2011
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : février 2011
    Messages : 3
    Points : 0
    Points
    0

    Par défaut

    Bonjour barbibulle et encore merci pour votre réponse.

    Après plusieurs tests, j'en conclus que ce n'est pas possible.
    J'ai bien crée des utilisateurs pour la réplication.

    Mais il n'y a que deux types de réplication:
    La synchronisation simple, qui fait une copie de la base source à la cible, ce qui ne m'intéresse donc pas, et la synchronisation symétrique, qui là, est intéressante pour tout, sauf que ça ne peux pas supprimer d'éléments...
    De plus, je ne peux pas définir de règles de priorités car les deux bases sont complémentaires...

    je suis donc bloqué, et je crois que ce que je veux réaliser est tout simplement impossible...

    Merci pour tout et je te souhaite une bonne journée !

  6. #6
    Expert Confirmé

    Homme Profil pro Philippe Makowski
    Consultant spécialité Firebird
    Inscrit en
    mai 2002
    Messages
    2 308
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe Makowski
    Âge : 51
    Localisation : France

    Informations professionnelles :
    Activité : Consultant spécialité Firebird
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 2 308
    Points : 3 294
    Points
    3 294

    Par défaut

    Citation Envoyé par max974 Voir le message
    je suis donc bloqué, et je crois que ce que je veux réaliser est tout simplement impossible...
    bien sur que non
    IBReplicator permet de mettre en oeuvre cela
    http://www.ibphoenix.com/products/software/ibreplicator
    Philippe Makowski
    IBPhoenix - Firebird
    Membre de l'April

  7. #7
    Membre Expert Avatar de Barbibulle
    Profil pro Frédéric
    Inscrit en
    octobre 2002
    Messages
    1 734
    Détails du profil
    Informations personnelles :
    Nom : Frédéric
    Âge : 44

    Informations forums :
    Inscription : octobre 2002
    Messages : 1 734
    Points : 2 322
    Points
    2 322

    Par défaut

    Citation Envoyé par max974 Voir le message
    Mais il n'y a que deux types de réplication:
    La synchronisation simple, qui fait une copie de la base source à la cible, ce qui ne m'intéresse donc pas, et la synchronisation symétrique, qui là, est intéressante pour tout, sauf que ça ne peux pas supprimer d'éléments...
    C'est que vous avez du exclure les DELETE de la réplication !

    Citation Envoyé par max974 Voir le message
    De plus, je ne peux pas définir de règles de priorités car les deux bases sont complémentaires...
    Il faut bien une règle... "Une base prioritaire par rapport à l'autre" ou bien "le dernier qui parlé a raison" (avec des timestamps) Permet de conserver la modification la plus récente des 2 bases.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •