Guide de mise en place de la réplication SQL Server (Transactionnelle)
1. PRÉREQUIS
- S'assurer que les deux serveurs SQL sont accessibles en réseau
- SQL Server Agent est démarré sur les deux serveurs
- Utiliser un compte avec les droits 'sysadmin'
- La base source est en mode de récupération 'Full' ou 'Bulk Logged'
2. CONFIGURER LE DISTRIBUTEUR
Dans SSMS (SQL Server Management Studio) sur le serveur source :
- Aller dans : Réplication > Clic droit > Configurer la distribution...
- Choisir 'Ce serveur agira comme son propre distributeur'
- Choisir un dossier pour les instantanés (ex. C:\Replication\Snapshots)
- Valider la création de la base 'distribution'
3. CRÉER LA PUBLICATION
- Réplication > Publications locales > clic droit > Nouvelle publication
- Choisir la base source (ex : Base_Publisher)
- Choisir 'Réplication transactionnelle'
- Sélectionner les tables à répliquer
- Créer un snapshot immédiatement ou planifié
- Donner un nom à la publication
- Terminer lassistant
4. CRÉER LA SOUSCRIPTION
Depuis le Publisher :
- Clic droit sur la publication > Nouvelle souscription
- Choisir le serveur abonné (Subscriber) et la base de destination
- Choisir 'Push subscription'
- Authentification SQL ou Windows (droits requis)
- Initialiser avec snapshot ? OUI
- Terminer
5. VÉRIFICATION
- Vérifier le Snapshot Agent (100% = OK)
- Réplication > Publications locales > View Snapshot Agent Status
- Vérifier les données côté Subscriber
- Vérifier les jobs SQL Server Agent
Page 1
Guide de mise en place de la réplication SQL Server (Transactionnelle)
6. COMMANDES SQL UTILES
-- Démarrer Snapshot Agent
EXEC sp_startpublication_snapshot @publication = 'NomPublication';
-- Vérifier état réplication
EXEC sp_replmonitorhelpsubscription @publication_type = 0;
7. SUPPRIMER LA RÉPLICATION
-- Supprimer la souscription
EXEC sp_dropsubscription @publication = 'NomPublication', @subscriber = 'NomServeur', @destination_db =
'Base_Subscriber';
-- Supprimer la publication
EXEC sp_droppublication @publication = 'NomPublication';
-- Supprimer le distributeur
EXEC sp_dropdistributor @no_checks = 1, @ignore_distributor = 1;
Page 2