Bonjour !
J'essaie de faire communiquer 2 BDD SQL Server entre elles mais j'ai quelques soucis.
Les 2 bases sont sur 2 serveurs distincts (serveur 1, avec base 1 et l'application, serveur 2 avec base 2). En créant un serveur lié, je peux requeter dans le SQL Server Management en admin, tout se passe bien.
Par contre, je voudrais que les bases communiquent en temps réel pour certaines données/tables.
J'ai donc créé une procédure stockée qui met à jour la base 2 en fonction des infos dans la base 1, et j'appelle celle-ci dans un trigger d'une table de la base 1.
A ce moment j'ai 2 problèmes :
- la session utilisée par l'application et dans la base 1 et serveur 1 doit exister dans le serveur 2 et la base 2 avec le même mot de passe, mais je ne pense pas que ça soit une bonne idée de recréer tous les utilisateurs sur le serveur 2 et je ne sais pas si c'est possible de récupérer les mots de passes
- on ne peut pas utiliser de transaction avec le serveur lié et dans le code de l'application, toutes les procédures sont dans des transactions
Je commence donc à douter que ça soit la bonne méthode.
Sauriez-vous m'aiguiller? Quelle serait la meilleure manière de faire pour avoir 2 BDD qui communiquent en temps réel?
Il est aussi possible que j'ai à faire communiquer la base 2 avec d'autres applications pas sous SQL Server et pas forcément en temps réel. Là je pensais travailler avec des exports de fichier csv ou excel, sauf si vous avez une autre idée plus optimisée?
Merci d'avance pour votre aide !
Partager