Mejores prácticas para la administración de replicaciones

Se aplica a:SQL ServerAzure SQL Managed Instance

Después de configurar la replicación, es importante entender cómo administrar una topología de replicación. Este artículo ofrece orientación básica de mejores prácticas en varias áreas con enlaces a más información para cada área. Además de seguir las guías de mejores prácticas presentadas en este artículo, considera leer las preguntas frecuentes para familiarizarte con las preguntas y cuestiones más comunes: Preguntas frecuentes para administradores de replicación.

Divide la guía de mejores prácticas en dos áreas:

  • La siguiente información cubre las mejores prácticas que debes implementar para todas las topologías de replicación:

    • Desarrollar y probar una estrategia de copias de seguridad y restauración

    • Generar un script de la topología de replicación

    • Crear umbrales y alertas

    • Supervisar la topología de replicación

    • Establecer líneas de base de rendimiento y optimizar la replicación si es necesario

  • La siguiente información cubre las mejores prácticas que deberías considerar, pero que puede que no sean necesarias para tu topología:

    • Validar los datos periódicamente

    • Ajustar los parámetros de agentes mediante perfiles

    • Ajustar los períodos de conservación de la publicación y la distribución.

    • Conocer cómo cambiar las propiedades de artículos y publicaciones si cambian los requisitos de la aplicación

    • Conocer cómo realizar cambios de esquema si cambian los requisitos de la aplicación

Desarrollar y probar una estrategia de copias de seguridad y restauración

Haz copias de seguridad de todas las bases de datos regularmente y prueba la capacidad de restaurar esas copias periódicamente. Las bases de datos replicadas no son diferentes. Haz copias de seguridad regulares de las siguientes bases de datos:

  • Base de datos de publicaciones

  • Base de datos de distribución

  • Bases de datos de suscripciones

  • Base de datos msdb y base de datos master en el publicador, distribuidor y todos los suscriptores

Las bases de datos replicadas requieren especial atención al hacer copias de seguridad y restaurar datos. Para obtener más información, consulte Realizar copias de seguridad y restaurar bases de datos replicadas.

Crear un script para la topología de replicación

Escribe todos los componentes de replicación en una topología como parte de un plan de recuperación ante desastres. También puedes usar scripts para automatizar tareas repetitivas. Un script contiene los procedimientos almacenados del sistema Transact-SQL necesarios para implementar los componentes de replicación, como una publicación o suscripción. Crea scripts en un asistente (como el Asistente de Nuevas Publicaciones) o en SQL Server Management Studio después de crear un componente. Puedes ver, modificar y ejecutar el script usando SQL Server Management Studio o sqlcmd. Guarda los scripts con archivos de copia de seguridad por si necesitas reconfigurar una topología de replicación. Para más información, consulte Scripting Replication.

Reescribe un componente si haces algún cambio de propiedad. Si usas procedimientos almacenados personalizados con replicación transaccional, almacena una copia de cada procedimiento junto con los scripts. Actualiza la copia si el procedimiento cambia. Los procedimientos suelen cambiar debido a cambios en el esquema o a cambios en los requisitos de la aplicación. Para obtener más información sobre los procedimientos personalizados, vea Especificar cómo se propagan los cambios para los artículos transaccionales.

Establecer líneas de base de rendimiento y optimizar la replicación si es necesario

Antes de configurar la replicación, familiarízate con los factores que afectan al rendimiento de la replicación:

  • Hardware de servidor y red

  • Diseño de la base de datos

  • Configuración del distribuidor

  • Diseño y opciones de publicación

  • Diseño y uso de los filtros

  • Opciones de suscripción

  • Opciones de instantáneas

  • Parámetros de agente

  • Mantenimiento

Después de configurar la replicación, desarrolla una línea base de rendimiento. Esta línea base te ayuda a entender cómo se comporta la replicación con una carga de trabajo típica para tus aplicaciones y topología. Utilice el Monitor de replicación y el Monitor de sistema para determinar los valores típicos de las cinco dimensiones siguientes del rendimiento de la replicación:

  • Latencia: el tiempo que tarda un cambio de datos en propagarse entre nodos en una topología de replicación.

  • Rendimiento: la cantidad de actividad de replicación (medida en comandos suministrados durante un período de tiempo) que un sistema puede mantener en el tiempo.

  • Simultaneidad: el número de procesos de replicación que pueden operar simultáneamente en un sistema.

  • Duración de sincronización: el tiempo que tarda en finalizar una sincronización determinada

  • Utilización de recursos: recursos de hardware y de red utilizados como resultado del procesamiento de replicación.

La latencia y el rendimiento son las más relevantes para la replicación transaccional, porque los sistemas basados en la replicación transaccional requieren generalmente latencia baja y alto rendimiento. La simultaneidad y la duración de sincronización son las más relevantes para la replicación de mezcla, porque los sistemas basados en la replicación de mezcla suelen tener un gran número de suscriptores, y un publicador puede tener un número significativo de sincronizaciones simultáneas con estos suscriptores.

Después de establecer los números de referencia, establece umbrales en Replication Monitor. Para obtener más información, vea Establecer umbrales y advertencias en el Monitor de replicación y Usar alertas para eventos del Agente de replicación. Si te encuentras con un problema de rendimiento, revisa las sugerencias de los artículos sobre mejora del rendimiento mencionados anteriormente. Aplica cambios en las áreas que afecten a los problemas que estás enfrentando.

Crear umbrales y alertas

Replication Monitor te permite establecer umbrales relacionados con el estado y el rendimiento. Establece los umbrales apropiados para tu topología. Cuando se alcanza un umbral, se muestra una advertencia y opcionalmente se puede enviar una alerta a una cuenta de correo electrónico, un buscapersonas u otro dispositivo. Para más información, consulte Establecer umbrales y advertencias en el Monitor de replicación.

Además de las alertas que pueden asociarse con umbrales de monitorización, la replicación proporciona alertas predefinidas que responden a las acciones del agente de replicación. Utiliza estas alertas para mantenerte informado sobre el estado de la topología de replicación. Revisa el artículo que describe las alertas y utiliza las que se ajusten a tus necesidades de administración. También puedes crear alertas adicionales si es necesario. Para obtener más información, vea Usar alertas para eventos del Agente de replicación.

Supervisar la topología de replicación

Después de crear la topología de replicación y configurar umbrales y alertas, monitoriza regularmente la replicación. Supervisar una topología de replicación es un aspecto importante en la implementación de la replicación. Dado que la actividad de replicación está distribuida, debes hacer un seguimiento de la actividad y el estado en todos los ordenadores implicados en la replicación. Utiliza las siguientes herramientas para monitorizar la replicación:

  • El Monitor de Replicación es la herramienta más importante para monitorizar la replicación. Te permite monitorizar la salud general de una topología de replicación. Para más información, consulte Monitoring Replication.

  • Transact-SQL y Replication Management Objects (RMO) proporcionan interfaces para supervisar la replicación. Para más información, consulte Monitoring Replication.

  • El Monitor de sistema también puede ser útil para supervisar el rendimiento de la replicación. Para más información, consulte Monitoring Replication with System Monitor.

Validar los datos periódicamente

La replicación no requiere validación, pero deberías ejecutar validaciones periódicas para replicación transaccional y replicación por fusiones. La validación verifica que los datos del Suscriptor coincidan con los del Publisher. La validación exitosa indica que en ese momento todos los cambios desde el Publisher se replican al Suscriptor (y del Suscriptor al Publisher si se admiten actualizaciones en el Suscriptor) y que ambas bases de datos están sincronizadas.

Realiza la validación según el calendario de respaldo de la base de datos de publicaciones. Por ejemplo, si la base de datos de publicaciones tiene una copia de seguridad completa una vez por semana, ejecuta la validación una vez por semana una vez finalizada la copia de seguridad. Para obtener más información, vea Validar datos replicados.

Utilice perfiles de agente para cambiar los parámetros del agente si es necesario

Los perfiles de agente proporcionan un método cómodo para establecer los parámetros de los agentes de replicación. También puedes especificar parámetros en la línea de comandos del agente, pero normalmente es más apropiado usar un perfil de agente predefinido o crear un nuevo perfil si necesitas cambiar el valor de un parámetro. Por ejemplo, si usas replicación de fusión y un suscriptor pasa de una conexión de banda ancha a una conexión de acceso telefónico, considera usar el perfil de enlace lento para el Agente de mezcla. Este perfil utiliza un conjunto de parámetros que se adaptan mejor al enlace de comunicación más lento. Para obtener más información, consulte Replication Agent Profiles.

Ajustar los períodos de retención de publicación y distribución si es necesario

La replicación transaccional y la replicación de mezcla utilizan períodos de retención para determinar, respectivamente, cuánto tiempo se almacenan las transacciones en la base de datos de distribución y la frecuencia con que se debe sincronizar una suscripción. Usa los ajustes por defecto al principio, pero controla la topología para determinar si los ajustes requieren ajustes. Por ejemplo, en el caso de la replicación de combinación, el período de retención de la publicación, cuyo valor predeterminado es de 14 días, determina durante cuánto tiempo se almacenan los metadatos en las tablas del sistema. Si las suscripciones siempre se sincronizan en cinco días, considera ajustar la configuración a un número menor. Este cambio reduce los metadatos y posiblemente ofrece un mejor rendimiento. Para más información, consulte Subscription Expiration and Deactivation.

Conocer cómo modificar las publicaciones si cambian los requisitos de la aplicación

Después de crear una publicación, puede que necesites añadir o eliminar artículos, o cambiar las propiedades de publicación y artículos. La mayoría de los cambios están permitidos después de crear una publicación, pero en algunos casos necesitas generar una nueva instantánea para una publicación y reiniciar las suscripciones a la publicación. Para más información, vea Change Publication and Article Properties (Cambiar las propiedades de la publicación y de los artículos) y Agregar y quitar artículos de publicaciones existentes.

Conocer cómo realizar cambios de esquema si cambian los requisitos de la aplicación

En muchos casos, necesitas hacer cambios en el esquema después de que una aplicación esté en producción. En una topología de replicación, a menudo es necesario propagar estos cambios a todos los Suscriptores. La replicación admite una gran variedad de cambios en el esquema de objetos publicados. Cuando realizas cualquiera de los siguientes cambios de esquema en el objeto publicado correspondiente en un Microsoft SQL Server Publisher, el cambio se propaga por defecto a todos los suscriptores SQL Server:

  • ALTER TABLE

  • ALTER VIEW

  • ALTER PROCEDURE

  • ALTER FUNCTION

  • ALTER TRIGGER

Para más información, vea Realizar cambios de esquema en bases de datos de publicaciones.