Synchronisation de bases de données [Résolu]

Signaler
Messages postés
36
Date d'inscription
vendredi 15 novembre 2013
Statut
Membre
Dernière intervention
22 avril 2021
-
Messages postés
15282
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2021
-
Bonjour à tous,

Alors voilà, j’aimerais faire une synchronisation entre 3 bases de données à l’aide de 3 sql server 2019 afin que les 3 bases de données soit égales tout le temps.
De plus, j’aimerais qu’elle soit chacune stockées en local sur chaque server afin de garantir une sécurité en cas de crache d’un serveur.

Je me suis tourné vers une réplication transactionnelle de base de données. Mais je constate que c’est que dans un sens…
Par exemple, si je fait une modification sur le srv 1 elle vas bien sur le srv 2 et le srv 3 mais si je fais une modification sur le srv 2 ou le srv 3 elle ne vas pas sur le srv 1… et du coup impossible de faire des publications en plus sur la base…

Je voudrais que si une modification est faite sur le srv 1 elle soit répliquée sur le srv 2 et le srv 3 et vis versa si il y a une modification sur le srv 2 qu’elle soit répliquée sur le srv 1 et le srv 2 tout en ayant les bases de données en local sur chaque serveurs….

Avez vous des conseils ou des solutions à mon problème svp ?

Merci d’avance pour votre temps ????

5 réponses

Messages postés
15282
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2021
837
bonjour,
ce que tu aimerais n'est pas faisable tel quel.
il te faut donc adapter ta solution. tout dépend de ton contexte, difficile de faire une suggestion générale.
Messages postés
15282
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2021
837
Messages postés
36
Date d'inscription
vendredi 15 novembre 2013
Statut
Membre
Dernière intervention
22 avril 2021

Merci yg_be,

Je me prends peut être trop la tête et cherche trop compliqué alors qu’il y a peut être une solution bien plus simple.

N’ayant pas mon PC avec moi je t’ai fais un petit visio maison fait main :



Alors, une application ayant besoin d’accéder à la base de données est installée sur chacun des pc (pc1 et pc2), pas d’application sur le serveur juste la base de données.
La base du serveur sert surtout de backup et (ce que j’avais penser) à synchroniser toutes les bases afin qu’elles soient identiques partout. Il faut savoir qu’il peut y avoir N pc… c’est donc pour ça que j’ai pensé mettre sql serveur 2019 sur tout les postes. Pas de soucis de moyens ;P

Le but étant d’avoir une application toujours fonctionnelle même en cas de perte du serveur ou d’un pc…
Il faut également que si le serveur tombe, que une fois remis en route tout se resynchronise…

Bon j’espère avoir été assez claire
Messages postés
15282
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2021
837
ce que tu décris n'est pas faisable tel quel.
il te faut donc adapter ta solution, faire des compromis.
tu ne dis rien de ton contexte, de ce que fait l'application, de la structure des données, de ton budget, de l'impact d'une interruption, de l'impact d'un incohérence dans les données, etc...
Messages postés
36
Date d'inscription
vendredi 15 novembre 2013
Statut
Membre
Dernière intervention
22 avril 2021

D’accord je peux adapter comme je veux pas de soucis pour ça. Pour te mettre au courant je ne suis pas ingénieur en base de donnée mais en système et réseau :), donc en terme d’infrastructure tout est ok. Par contre du coup je dois m’occuper de la faisabilité et du paramétrage de sql server.

Tu vas rigoler mais l’application ne fait rien d’extraordinaire, juste renseigner des informations selon des actions faite par l’opérateur. En gros la base va stocker des dates, du texte et des nombres (le principe de bdd quoi), il n’y auras pas des millions de données à la seconde, c’est vraiment infime en terme de flux de données. Oui je sais c’est surdimensionnées pour se que ça fait. Mais ça doit être irréprochable…
Pour la structure elle n’est pas encore existante, nous la feront une fois le système mis en place et fonctionnel. Du moins les développeurs le feront.
Budget illimité :D il n’y a pas de budget… j’ai carte blanche sur tout…
Pas d’interruption possible… en terme de matériel tout est doublé avec des spares prêts à l’emploi (pc et serveur), en gros on remplace en débranchant et rebranchant et pouf il faut que ça redémarre.
Pas d’incohérences possible… il faut pouvoir justifier d’un bon fonctionnement et d’une perte de donnés égal à 0. Des sauvegardes et des archivages sont gérer par le biais du serveur.
Messages postés
15282
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2021
837
l'application enregistre des données, ni mise à jour ni consultation?
par "incohérence", je voulais dire "désynchronisation temporaire".
aucune possibilité de contradiction suite à des mises à jour indépendantes?

en général, c'est l'architecture applicative qui est conçue pour répondre à tous ces besoins.
elle me semble bizarrement peu adaptée à la situation, ou faite sans tenir compte de la technologie.
pourquoi des bases de données sur les PC?
pourquoi aucune application sur les serveurs?
Messages postés
36
Date d'inscription
vendredi 15 novembre 2013
Statut
Membre
Dernière intervention
22 avril 2021

Si il y a consultation et mise à jour via les applications.
Ah d’accord si il peux y avoir une perte de synchronisation du moment que la synchronisation reprend a un moment.
Comment ça des mises à jours ? Si tu parle de MAJ des systèmes elles sont manuel, pas de connexion internet sur l’infrastructure…
Les bases de données sur les pc c’est mon idée afin de pouvoir continuer d’alimenter la base si le serveur tombe… en gros si il y a un gros souci et plus de serveur, les pc deviennent indépendants…
Pas de nécessité d’avoir l’application sur le serveur. L’application est vraiment juste pour les opérateurs.
Messages postés
36
Date d'inscription
vendredi 15 novembre 2013
Statut
Membre
Dernière intervention
22 avril 2021
>
Messages postés
15282
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2021

Là tu vas trop loin pour moi. C’est plutôt l’histoire des développeurs ça non ?

Si je pouvais faire appel à des professionnels je l’aurais fait depuis longtemps :) mais nous ne pouvons pas faire appel à des prestataires malheureusement.

J’ai essayé la réplication mais ça va que dans 1 sens… ou alors je n’ai pas pris la bonne option… car pour moi faire de la réplication était la bonne à faire.

Sinon j’avais pensé à stocker la base sur le serveur, que les applications aillent chercher les infos directement sur le serveur et faire une réplication de la base du serveur vers les pc. Après trouver un moyen avec les développeurs pour que si le serveur tombe les applications passe en mode dégradé et se connecte sur la base en local… mais si des nouvelles infos sont traité, comment les remettre dans la base initiale ?
Messages postés
15282
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2021
837 >
Messages postés
36
Date d'inscription
vendredi 15 novembre 2013
Statut
Membre
Dernière intervention
22 avril 2021

je pense que les développeurs trouveront des réponses à tes questions.
Messages postés
36
Date d'inscription
vendredi 15 novembre 2013
Statut
Membre
Dernière intervention
22 avril 2021
>
Messages postés
15282
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2021

Les développeurs ne s’occupent pas de l’architecture. Ils veulent accéder à la base. Moi il faut juste que je trouve le moyen de sécuriser ses l’infrastructure et la bases de données de façon transparente pour l’opérateur. Et si on avez la solution je ne me permettrai pas de vous déranger sur le forum :D
Messages postés
15282
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2021
837 >
Messages postés
36
Date d'inscription
vendredi 15 novembre 2013
Statut
Membre
Dernière intervention
22 avril 2021

Vu la composition de l'équipe, je simplifierais autant que possible la solution, afin qu'elle soit réalisable et opérable:
pas de db sur les PC, une db sur un serveur, réplication vers un serveur de sauvegarde.

De nouveau, il n'y a pas "une solution", il faut faire des compromis et déterminer le meilleur choix pour un contexte donné.
Messages postés
36
Date d'inscription
vendredi 15 novembre 2013
Statut
Membre
Dernière intervention
22 avril 2021
>
Messages postés
15282
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 avril 2021

D’accord effectivement c’est pas mal non plus le deuxième serveur. On voulait éviter un deuxième serveur lol… je vais voir ça lundi car j’ai bien l’impression que c’est la meilleure des solutions afin de garantir un état de fonctionnement pour les bd…
Si le serveur principal tombe, du coup c’est aux applications d’aller chercher les données sur le serveur secondaire qui aura une réplication de la bd du serveur principal c’est ça ? Du coup j’ai plus que deux sql server à mettre en place, un sur chaque serveur c’est ça ?