+ Répondre à la discussion
Affichage des résultats 1 à 4 sur 4
  1. #1
    Candidat au titre de Membre du Club
    Inscrit en
    mai 2009
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : mai 2009
    Messages : 52
    Points : 13
    Points
    13

    Par défaut synchroniser 2 bases de données différentes

    Bonjour,

    Je dois synchroniser 2 bases de données différentes (juste une partie des tables). L'une des bases utilise MS SQL et l'autre MySql et les 2 disposent d'une API permettant d’interagir avec elles depuis l’extérieur.

    Les 2 bases de données sont utilisées chacune par un logiciel différent et peuvent donc être modifiées a tout instant indépendamment de l'autre. Le problème que je vois avec ça est qu'une donnée commune aux 2 bases peut être modifiée au même moment sur les 2 bases de manière différentes. Par exemple si on a une donnée "a" sur les 2 bases, elle peut être modifiée en "b" sur une et en "c" sur l'autre.

    J'imagine qu'il y a une méthode pour régler ce problème et faire une synchronisation correcte mais je ne sais pas laquelle. En cherchant je suis tombé sur un article qui si j'ai bien compris indique que l'on peut utiliser un middleware mais je ne vois pas trop comment.

    Quelqu'un pourrait-il m’éclairer sur la "bonne manière" de faire cette synchronisation ?

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert SGBDR & SQL
    Inscrit en
    mai 2002
    Messages
    13 766
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Expert SGBDR & SQL
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 13 766
    Points : 30 500
    Points
    30 500

    Par défaut

    Il est dommage que vous ayez mélangé MySQL et SQL Server car MS SQL Server dispose de la réplication de fusion en standard. Mais ceci n'est pas possible avec MySQL. Il vous faudra donc tout coder à la main, y compris la gestion de résolution des conflits de réplication....

    Bon courage !!!!!!!!!!!

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
    http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

  3. #3
    Candidat au titre de Membre du Club
    Inscrit en
    mai 2009
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : mai 2009
    Messages : 52
    Points : 13
    Points
    13

    Par défaut

    Merci pour la réponse.

    Effectivement ça aurait été plus simple avec 2 bases de données MS SQL. Mais malheureusement pour moi tout était déjà en place quand je suis arrivé (je suis stagiaire).

    Sauriez-vous s'il existe une documentation ou quelque chose reprenant les points a ne pas oublier quand on veut coder cela ?

    Ce n'est pas que je suis feignant et que je ne veuille pas y réfléchir mais je n'ai pas beaucoup de temps, je termine mon stage dans 3 semaines en comptant celle-la. Et vu ce qui pourrait se passer sur la base si j'oublie de prendre en compte quelque chose je préfère mettre toutes les chances de mon coté.

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Expert Base de Données
    Inscrit en
    janvier 2009
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Expert Base de Données

    Informations forums :
    Inscription : janvier 2009
    Messages : 16
    Points : 19
    Points
    19

    Par défaut

    Salut,

    Ton problème est assez classique et c'est vrai que MS-SQL fournit une réplication par fusion.

    Le plus compliqué dans la réplication en fusion c'est de définir les règles lorsque justement on modifie un enregistrement en même temps. (Qui à raison, le dernier, le premier, un peu des deux...)

    Il faut aussi se poser la question fonctionnellement si cela à du sens? Fusion une fois toute les nuits, Une base maitre, l'autre esclave, ...

    Pour ma part j'évite totalement les fusions de base, car il y a toujours des cas tordu à gérer.

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
  •