On m'a demandé d'écrire un script SQL pouvant être exécuté, qui arrêtera la réplication et supprimera l'abonné / abonnement. P>
est-ce possible? Ou devez-vous utiliser l'interface graphique? P>
3 Réponses :
Quelle version de SQL Server vous utilisez.
Essayez p>
sp_removedbreplication 'DB_PROD' go
SELECT spid FROM sys.sysprocesses WHERE dbid = db_id('distribution') and use the process number to kill it as below: kill 65
Ce n'est même pas proche d'une réponse correcte. Tout ce que vous faites est de tuer tout ce qui se connecte à la base de données.
Si vous souhaitez supprimer complètement la réplication, y compris tous les "bits". Ou votre serveur n'a qu'une publication et c'est celui que vous essayez de supprimer. p> blockQuote>
Je recommanderais: p>
- Connectez-vous à l'éditeur ou à la distribution que vous souhaitez désactiver dans Microsoft SQL Server Management Studio, puis développez le nœud serveur. LI>
- Cliquez avec le bouton droit sur le dossier de réplication, puis cliquez sur Désactiver la publication et la distribution. LI>
- Suivez les étapes de l'Assistant Désactiver la publication et la distribution, et au lieu de Traitement fort> Sélectionnez l'option sur Générer des scripts forts>. li>. Li>. ol>
Cela a l'avantage de non seulement le nettoyer complètement les choses. Mais également en supprimant la base de données de distribution, que si vous avez déjà été traitée auparavant, il est connu pour devenir jonché de vestiges de réplications passées. P>
La documentation complète peut être trouvée Ici . P>
Et cela ne fait pas mal à «SP_REMOVEBRÉPLICATION» après simplement pour vous assurer que tout est parti.