Compartir a través de


Requisitos previos, restricciones y recomendaciones para el reflejo de la base de datos

Nota:

Esta característica se quitará en una versión futura de Microsoft SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. Use Always On grupos de disponibilidad en su lugar.

En este tema se describen los requisitos previos y las recomendaciones para configurar el reflejo de bases de datos. Para obtener una introducción a la creación de reflejo de la base de datos, consulte Creación de reflejo de la base de datos (SQL Server).

Nota:

El formato de almacenamiento en disco de SQL Server es el mismo en los entornos de 64 y 32 bits. Por lo tanto, una sesión de creación de reflejo de la base de datos puede combinar instancias de servidor que se ejecutan en un entorno de 32 bits y en instancias de servidor que se ejecutan en un entorno de 64 bits.

Compatibilidad con el reflejo de bases de datos

Para obtener información sobre la compatibilidad con la creación de reflejo de la base de datos en SQL Server 2014, vea Características compatibles con las ediciones de SQL Server 2014.

Tenga en cuenta que el reflejo de base de datos funciona con cualquier nivel de compatibilidad de base de datos compatible. Para obtener información sobre los niveles de compatibilidad admitidos, vea NIVEL de compatibilidad de ALTER DATABASE (Transact-SQL).

Prerrequisitos

  • Para que se establezca una sesión de reflejo, los pares y el testigo, si hay alguno, deben ejecutarse en la misma versión de SQL Server.

  • Los dos asociados, que es el servidor principal y el servidor reflejado, deben ejecutar la misma edición de SQL Server. El testigo, si existe, puede ejecutarse en cualquier edición de SQL Server que admita el reflejo de base de datos.

    Nota:

    Puede actualizar instancias de servidor asociadas en una sesión de creación de reflejo a una versión más reciente de SQL Server. Para obtener más información, vea Minimizar el tiempo de inactividad de las bases de datos reflejadas al actualizar instancias del servidor.

  • La base de datos debe usar el modelo de recuperación completa. Los modelos de recuperación simple y con registro masivo no admiten el reflejo de bases de datos. Por lo tanto, las operaciones en bloque siempre se registran completamente para una base de datos reflejada. Para obtener información sobre los modelos de recuperación, vea Modelos de recuperación (SQL Server) .

  • Compruebe que el servidor reflejado tiene suficiente espacio en disco para la base de datos reflejada.

    Nota:

    Para obtener información sobre cómo usar el reflejo de la base de datos en una base replicada, consulte Reflejo de la base de datos y replicación (SQL Server).

  • Al crear la base de datos reflejada en el servidor espejo, asegúrese de restaurar la copia de seguridad de la base de datos principal especificando el mismo nombre de base de datos CON NORECOVERY. Además, todas las copias de seguridad de registros que se crearon después de realizar esa copia de seguridad también deben aplicarse, de nuevo WITH NORECOVERY.

    Importante

    Si se ha detenido el reflejo de la base de datos, para poder reiniciarlo, las copias de seguridad de registros posteriores realizadas en la base de datos principal deben ser aplicadas a la base de datos reflejada.

Restricciones

  • Solo las bases de datos de usuario pueden ser duplicadas. No se pueden reflejar las bases de datos master, msdb, tempdb ni model.

  • No se puede cambiar el nombre de una base de datos reflejada durante una sesión de reflejo de base de datos.

  • El reflejo de la base de datos no admite FILESTREAM. No se puede crear un grupo de archivos FILESTREAM en el servidor principal. No puede configurarse el reflejo de la base de datos para una base de datos que contenga grupos de archivos FILESTREAM.

  • En un sistema de 32 bits, la creación de reflejo de la base de datos puede admitir un máximo de aproximadamente 10 bases de datos por instancia de servidor debido a los números de subprocesos de trabajo consumidos por cada sesión de creación de reflejo de la base de datos.

  • El reflejo de bases de datos no es compatible con transacciones entre bases de datos ni con transacciones distribuidas. Para obtener más información, consulte Transacciones entre bases de datos no compatibles con el reflejo de base de datos o los Grupos de disponibilidad AlwaysOn (SQL Server).

Recomendaciones para configurar servidores asociados

  • Los socios deben utilizar sistemas comparables que puedan manejar cargas de trabajo idénticas.

    Nota:

    Si tiene previsto usar el modo de alta seguridad con conmutación automática por error, la carga normal en cada asociado de conmutación por error debe ser inferior al 50 por ciento de la CPU. Si la carga de trabajo sobrecarga la CPU, es posible que un socio de conmutación por error no pueda enviar un ping a las otras instancias de servidor en la sesión de reflejo. Esto provoca una conmutación por error innecesaria. Si no puede mantener el uso de la CPU en un 50 por ciento, se recomienda usar el modo de alta seguridad sin conmutación automática por error o modo de alto rendimiento.

  • Si es posible, la ruta de acceso (incluida la letra de unidad) de la base de datos reflejada debe ser idéntica a la ruta de acceso de la base de datos principal. Debe incluir la opción MOVE en la instrucción RESTORE si la estructura de los archivos debe diferir. Por ejemplo, si la base de datos principal está en la unidad "F:", pero el sistema de espejo carece de una unidad "F:".

    Importante

    Si mueve los archivos de base de datos al crear la base de datos reflejada, es posible que no pueda agregar archivos a la base de datos más adelante sin que el reflejo se suspenda.

  • Todas las instancias de servidor de una sesión de creación de reflejo deben usar la misma página de códigos maestras y la intercalación. Las diferencias pueden causar un problema durante la configuración del espejo.

  • Opcionalmente, estime el tiempo de conmutación por error de una base de datos, para asegurarse de que la configuración del sistema le proporcionará el rendimiento que necesita. Para obtener más información, vea Calcular la interrupción del servicio durante la conmutación de roles (Creación de reflejo de la base de datos).

  • Para obtener el mejor rendimiento, use un adaptador de red dedicado (tarjeta de interfaz de red) para la creación de reflejo.

  • No hacemos recomendaciones sobre si una red de área extensa (WAN) es lo suficientemente confiable para el reflejo de base de datos en modo seguro. Si decide usar el modo de alta seguridad a través de una WAN, tenga cuidado sobre cómo agregar un testigo a la sesión, ya que se pueden producir conmutaciones automáticas no deseadas por error. Para obtener más información, vea Recomendaciones para implementar el reflejo de base de datos, más adelante en este tema.

Recomendaciones para desplegar el reflejo de la base de datos

El rendimiento óptimo del reflejo de la base de datos se obtiene mediante el funcionamiento asincrónico. Una sesión de creación de reflejo que usa una operación sincrónica puede experimentar un rendimiento lento cuando su carga de trabajo genera grandes cantidades de datos del registro de transacciones.

En entornos de prueba, es apropiado explorar todos los modos de operación para evaluar cómo funciona el reflejo de bases de datos. Sin embargo, antes de implementar la creación de reflejo en un entorno de producción, asegúrese de comprender cómo funciona la red en el mundo real.

El modo de alta seguridad con conmutación automática por error está diseñado para una red de alto servicio que tiene una conexión dedicada o una configuración de red bastante sencilla que minimiza los orígenes de posibles errores de red. Este entorno de red de alta calidad es necesario para el modo de alta seguridad con conmutación automática por error y se recomienda para todas las sesiones de creación de reflejo de la base de datos. Sin embargo, el modo de alto rendimiento y el modo de alta seguridad sin conmutación automática por error son mucho menos afectados por la confiabilidad de la red.

Por lo tanto, para entornos de producción se recomienda cumplir las siguientes directrices de implementación:

  1. Empiece a ejecutarse en modo asincrónico y de alto rendimiento. Este modo es el menos sensible al entorno de red y proporciona la mejor configuración para explorar cómo funciona la creación de reflejo. Se recomienda ejecutar el sistema de forma asincrónica hasta que esté seguro de que el ancho de banda admite la creación de reflejos y ha desarrollado una comprensión de la configuración de la creación de reflejo y del rendimiento del modo asincrónico en su entorno. Para más información, consulte Database Mirroring Operating Modes.

    Importante

    A lo largo de las pruebas, se recomienda supervisar las sesiones para detectar errores de red que causan fallos en el mirroring de la base de datos. Para obtener más información sobre posibles orígenes de error, consulte Posibles errores durante la creación de reflejo de la base de datos. Para obtener información sobre cómo supervisar el reflejo de la base de datos, consulte Supervisión del reflejo de la base de datos (SQL Server).

  2. Cuando esté seguro de que la operación asincrónica satisface las necesidades empresariales, es posible que desee probar la operación sincrónica para mejorar la protección de datos. Al probar primero cómo funciona el reflejo sincrónico en su entorno, se recomienda probar el modo de alta seguridad sin conmutación automática por error. El propósito principal de esta prueba es ver cómo afecta la operación sincrónica al rendimiento de la base de datos. Para más información, consulte Database Mirroring Operating Modes.

  3. Espere a habilitar la conmutación automática por error hasta que esté seguro de que el modo de alta seguridad sin conmutación automática por error satisface las necesidades empresariales y que los errores de red no provocan errores. Para obtener más información, vea Conmutación de roles durante una sesión de creación de reflejo de la base de datos (SQL Server).

Véase también

Configurar la creación de reflejo de la base de datos (SQL Server)
Seguridad de transferencia para la duplicación de bases de datos y los grupos de disponibilidad AlwaysOn (SQL Server)
Creación de reflejo de la base de datos (SQL Server)
Solucionar problemas de configuración de creación de reflejo de la base de datos (SQL Server)