Hay diferentes escenarios en los que necesitaremos eliminar la Replicación de una Base de Datos de SQL Server, como por ejemplo, si necesitamos sustituir un Subscriptor (la máquina) por cualquier motivo (ej: sustitución del Hardware) en una Réplica de Mezcla de SQL Server. Centrándonos en este caso particular, algunos DBAs se limitan a eliminar la Subscripción en el Publicador, o quizás la Subscripción y Publicación del Publicador. Sin embargo, esto no sería suficiente. Los pasos que deberíamos seguir son al menos los siguientes como regla general (ojo, puede haber excepciones): - Eliminar la Subscripción en el Publicador. Puede hacerse fácilmente desde SQL Server Management Studio. Si tenemos una Publicación con una única Subscripción, podriamos eliminar ambas cosas: Publicación y Subscripción.
- Eliminar la Subscripción en el Subscriptor. Puede hacerse fácilmente desde SQL Server Management Studio.
- Eliminar totalmente la Replicación del Subscriptor, ejecutando sp_removedbreplication sobre la Base de Datos del Subscriptor.
De este modo, dejaremos el entorno limpio. Si posteriormente necesitamos volver a crear la Subscripción, no deberíamos tener ningún problema. La importancia de eliminar totalmente la Replicación, ejecutando sp_removedbreplication, es porque nos garantizamos eliminar todos los objetos de la Réplica, como es el caso de los Triggers, Vistas, etc., lo cual incluye también eliminar las propias tablas del sistema de la Réplica. Este último punto es quizás el más importante, ya que las tablas del sistema de la Réplica almacenan mucha información (metadatos) de la Réplica, y si volvemos a configurar la Replicación manteniendo dichas tablas y sin haber eliminado la Subscripción del Subscriptor, podríamos replicar dichos metadatos antiguos, y tener problemas adicionales. Su ejecución es muy sencilla. Podemos consultar la información de los BOL si queremos profundizar más en este tema: Poco más por hoy. Como siempre, confío que la lectura resulte de interés. |