Agregar y quitar artículos de publicaciones existentes
Después de crear una publicación, se le pueden agregar y quitar artículos. Se pueden agregar artículos en cualquier momento, pero las acciones necesarias para quitar artículos dependen del tipo de replicación y del momento en que se quite el artículo.
Agregar artículos
Para agregar un artículo, es necesario agregar el artículo a la publicación, crear una instantánea nueva para la publicación y sincronizar la suscripción para aplicar el esquema y los datos para el nuevo artículo.
Nota
Si se agrega un artículo a una publicación de mezcla y ya hay un artículo que depende de este nuevo artículo, debe especificar un orden de procesamiento para los dos artículos con el parámetro @processing_order de sp_addmergearticle y sp_changemergearticle. Considere el caso siguiente: publica una tabla pero no publica una función a la que hace referencia la tabla.Si no publica la función, la tabla no se puede crear en el suscriptor. Al agregar la función a la publicación: especifique el valor 1 para el parámetro @processing_order de sp_addmergearticle y el valor 2 para el parámetro @processing_order de sp_changemergearticle; especifique el nombre de la tabla para el parámetro @article. Este orden de procesamiento garantiza que la función se cree en el suscriptor antes que la tabla que depende de él. Puede usar números distintos para cada artículo, siempre que el número de la función sea inferior al de la tabla.
Agregue uno o más artículos con uno de estos métodos:
Microsoft SQL Server Management Studio: Cómo agregar y quitar artículos de una publicación (SQL Server Management Studio)
Programación de la replicación con Transact-SQL: Cómo definir un artículo (programación de la replicación con Transact-SQL)
Programación con Objetos de administración de replicación (RMO): Cómo definir un artículo (programación con RMO)
Después de agregar un artículo a una publicación, debe crear una nueva instantánea para la publicación (y todas las particiones, si se trata de una publicación de mezcla con filtros con parámetros). A continuación, el Agente de distribución o de mezcla copia el esquema y los datos del nuevo artículo al suscriptor (sin reinicializar la publicación completa).
Para crear una instantánea nueva
SQL Server Management Studio: Cómo crear y aplicar la instantánea inicial (SQL Server Management Studio)
Programación de la replicación con Transact-SQL: Cómo crear la instantánea inicial (programación de la replicación con Transact-SQL)
Programación RMO: Cómo crear la instantánea inicial (programación con RMO)
Para crear una instantánea nueva para una publicación de mezcla con filtros con parámetros
SQL Server Management Studio: Cómo crear una instantánea para una publicación de mezcla con filtros con parámetros (SQL Server Management Studio)
Programación de la replicación con Transact-SQL: Cómo crear una instantánea para una publicación de mezcla con filtros con parámetros (programación de la replicación con Transact-SQL)
Una vez creada la instantánea, sincronice la suscripción para copiar el esquema y los datos para el nuevo artículo.
Para sincronizar una suscripción de inserción
SQL Server Management Studio: Cómo sincronizar una suscripción de inserción (SQL Server Management Studio)
Programación de la replicación con Transact-SQL: Cómo sincronizar una suscripción de inserción (programación de la replicación)
Programación RMO: Cómo sincronizar una suscripción de inserción (programación con RMO)
Para sincronizar una suscripción de extracción
SQL Server Management Studio: Cómo sincronizar una suscripción de extracción (SQL Server Management Studio)
Programación de la replicación con Transact-SQL: Cómo sincronizar una suscripción de extracción (programación de la replicación)
Programación RMO: Cómo sincronizar una suscripción de extracción (programación con RMO)
Quitar artículos
Puede quitar artículos de una publicación en cualquier momento, pero debe tener en cuenta los siguientes comportamientos:
Al quitar un artículo de una publicación no se quita el objeto de la base de datos de publicaciones ni el objeto correspondiente de la base de datos de suscripciones. Utilice DROP <objeto> para quitar estos objetos, si es necesario. Al quitar un artículo relacionado con otros artículos publicados a través de restricciones de clave externa, se recomienda quitar la tabla del suscriptor de forma manual o, ejecutando un script a petición, especifique un script que incluya las instrucciones DROP <objeto> apropiadas. Para obtener más información, vea Cómo ejecutar scripts durante la sincronización (programación de la replicación con Transact-SQL).
En el caso de las publicaciones de mezcla con un nivel de compatibilidad igual o superior a 90RTM, puede quitar artículos en cualquier momento, pero necesitará una instantánea nueva. Además:
Si un artículo es el artículo primario de un filtro de combinación o de una relación de registros lógicos, necesitará quitar primero las relaciones; para esto, es necesario reinicializar.
Si un artículo tiene el último filtro con parámetros de una publicación, será necesario reinicializar las suscripciones.
En el caso de las publicaciones de mezcla con un nivel de compatibilidad inferior a 90RTM, puede quitar artículos sin ningún tipo de consideraciones especiales antes de la sincronización inicial de las suscripciones. Si quita un artículo después de haber sincronizado una o más suscripciones, deberá quitar, volver a crear y sincronizar estas suscripciones. Para obtener más información acerca del nivel de compatibilidad, vea la sección sobre el nivel de compatibilidad para publicaciones de mezcla del tema Usar varias versiones de SQL Server en una topología de replicación.
En las publicaciones de instantáneas o transaccionales, se pueden quitar artículos sin ninguna consideración especial antes de crear las suscripciones. Si quita un artículo después de haber creado una o más suscripciones, deberá quitar, volver a crear y sincronizar estas suscripciones. Para obtener más información acerca de cómo quitar suscripciones, vea Suscribirse a publicaciones y sp_dropsubscription (Transact-SQL). sp_dropsubscription permite quitar un solo artículo de la suscripción en lugar de la suscripción completa.
Para quitar un artículo de una publicación, hay que quitar el artículo y crear una instantánea nueva para la publicación. Al quitar un artículo se invalida la instantánea actual; por lo tanto, es necesario crear una instantánea nueva.
Para quitar un artículo de una publicación
SQL Server Management Studio: Cómo agregar y quitar artículos de una publicación (SQL Server Management Studio)
Programación de la replicación con Transact-SQL: Cómo eliminar un artículo (programación de la replicación con Transact-SQL)
Programación RMO: Cómo eliminar un artículo (programación con RMO)
Después de quitar un artículo de una publicación, debe crear una nueva instantánea para la publicación (y todas las particiones, si se trata de una publicación de mezcla con filtros con parámetros).
Para crear una instantánea nueva
SQL Server Management Studio: Cómo crear y aplicar la instantánea inicial (SQL Server Management Studio)
Programación de la replicación con Transact-SQL: Cómo crear la instantánea inicial (programación de la replicación con Transact-SQL)
Programación RMO: Cómo crear la instantánea inicial (programación con RMO)
Para crear una instantánea nueva para una publicación de mezcla con filtros con parámetros
SQL Server Management Studio: Cómo crear una instantánea para una publicación de mezcla con filtros con parámetros (SQL Server Management Studio)
Programación de la replicación con Transact-SQL: Cómo crear una instantánea para una publicación de mezcla con filtros con parámetros (programación de la replicación con Transact-SQL)
Como se indicó antes, en algunos casos es necesario quitar, volver a crear y sincronizar las suscripciones después de quitar un artículo. Para obtener más información, vea Suscribirse a publicaciones y Sincronizar datos.