Actualización de instancias reflejadas

Se aplica a:SQL Server

Al actualizar una instancia reflejada de SQL Server a una nueva versión, a un nuevo Service Pack o actualización acumulativa de SQL Server, o a un nuevo Service Pack o actualización acumulativa de Windows, puede reducir el tiempo de inactividad de cada base de datos reflejada a solo una conmutación por error manual si realiza una actualización gradual (o dos conmutaciones por error manuales si conmuta por recuperación a la base de datos primaria original). Una actualización gradual es un proceso de varias etapas que en su forma más simple implica la actualización de la instancia de SQL Server que está actuando actualmente como servidor reflejado en una sesión de creación de reflejo y, después, conmutando por error manual la base de datos reflejada, actualizando la instancia principal anterior de SQL Server y reanudando la creación de reflejo. En la práctica, el proceso exacto dependerá del modo de funcionamiento y del número y diseño de la sesión de creación de reflejo que se ejecute en las instancias de SQL Server que va a actualizar.

Nota

Para obtener más información sobre el uso de la creación de reflejo de la base de datos con el trasvase de registros durante una migración, descargue este documento.

Requisitos previos

Antes de empezar, revise la siguiente información importante:

Antes de iniciar una actualización gradual, es recomendable que:

  1. Realice una conmutación por error manual de prueba en al menos una de las sesiones de creación de reflejo:

    Nota

    Para obtener más información sobre el funcionamiento de la conmutación por error manual, vea Conmutación de roles durante una sesión de creación de reflejo de la base de datos (SQL Server).

  2. Proteja los datos:

    1. Realice una copia de seguridad completa de cada base de datos principal:

      Creación de una copia de seguridad completa de base de datos (SQL Server)

    2. Ejecute el comando DBCC CHECKDB en cada base de datos principal.

Etapas de una actualización gradual

Los pasos específicos de una actualización gradual dependen del modo de funcionamiento de la configuración de creación de reflejo. No obstante, las etapas básicas son las mismas.

Nota

Para obtener información sobre los modos de funcionamiento, vea Modos de funcionamiento de la creación de reflejo de la base de datos.

La ilustración siguiente es un diagrama de flujo en el que se muestran las etapas básicas de una actualización gradual para cada modo de funcionamiento. Los procedimientos correspondientes se describen después de la ilustración.

Diagrama de flujo en el que se muestran los pasos de una actualización gradual

Importante

Una instancia del servidor podría estar realizando roles de creación de reflejo distintos (servidor principal, servidor reflejado o testigo) en sesiones de creación de reflejo simultáneas. En ese caso, tendrá que adaptar el proceso básico de actualización gradual a la función. 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).

Nota

En muchos casos, una vez completada la actualización gradual, se conmutará por recuperación al servidor principal original.

Para cambiar una sesión del modo de alto rendimiento al modo de alta seguridad

  1. Si una sesión de creación de reflejo se está ejecutando en modo de alto rendimiento, antes de realizar una actualización gradual, cambie al modo de seguridad alta sin conmutación automática por error.

    Importante

    Si el servidor reflejado está geográficamente distante del servidor principal, puede no ser conveniente realizar una actualización gradual.

Para quitar un testigo de una sesión

  1. Si una sesión de creación de reflejo conlleva un testigo, recomendamos que lo quite antes de realizar una actualización gradual. Si no lo hace, al actualizar la instancia del servidor reflejado, la disponibilidad de la base de datos depende del testigo que sigue estando conectado a la instancia del servidor principal. Después de quitar un testigo, puede actualizarlo en cualquier momento durante el proceso de actualización gradual sin aumentar el tiempo de inactividad de la base de datos.

Para realizar la actualización gradual

  1. Para reducir al mínimo el tiempo de inactividad, recomendamos que inicie la actualización gradual actualizando todos los asociados de creación de reflejo que sean actualmente el servidor reflejado en todas sus sesiones de creación de reflejo. Podría tener que actualizar varias instancias del servidor en este momento.

    Nota

    Un testigo se puede actualizar en cualquier momento del proceso de actualización gradual. Por ejemplo, si una instancia del servidor es un servidor reflejado en la Sesión 1 y es un testigo en la Sesión 2, puede actualizar ahora la instancia del servidor.

    La instancia del servidor que se debe actualizar en primer lugar depende de la configuración actual de las sesiones de creación de reflejo, como se indica a continuación:

    • Si cualquier instancia del servidor ya es el servidor reflejado en todas sus sesiones de creación de reflejo, actualice la instancia del servidor a la nueva versión.

    • Si todas las instancias del servidor son actualmente el servidor principal en cualquier sesión de creación de reflejo, seleccione una instancia del servidor para actualizarla primero. A continuación, conmute por error manualmente cada una de sus bases de datos principales y actualice esa instancia del servidor.

    Una vez que se ha actualizado, una instancia del servidor vuelve a unirse automáticamente a cada una de sus sesiones de creación de reflejo.

  2. En cada sesión de creación de reflejo cuya instancia del servidor reflejado se acaba de actualizar, espere a que la sesión se sincronice. A continuación, conéctese a la instancia del servidor principal y realice una conmutación manual por error de la sesión. Tras la conmutación por error, la instancia del servidor actualizada se convierte en el servidor principal para esa sesión y el servidor principal anterior se convierte en el servidor reflejado.

    El objetivo de este paso es que otra instancia del servidor se convierta en el servidor reflejado en cada sesión de creación de reflejo en la que es un asociado.

    Restricciones después de la conmutación por error a una instancia del servidor actualizada.

    Después de la conmutación por error de una instancia de servidor anterior a una instancia de servidor de SQL Server, la sesión de la base de datos se suspende. No se puede reanudar hasta que se haya actualizado el otro asociado. Sin embargo, el servidor principal sigue aceptando conexiones, y permitiendo acceso y modificaciones a datos en la base de datos principal.

    Nota

    El establecimiento de una nueva sesión de creación de reflejo requiere que todas las instancias del servidor se ejecuten en la misma versión de SQL Server.

  3. Después de la conmutación por error, recomendamos que ejecute el comando DBCC CHECKDB en la base de datos principal.

  4. Actualice todas las instancias del servidor que es ahora el servidor reflejado en todas las sesiones de creación de reflejo en las que sea asociado. Podría tener que actualizar varios servidores en este momento.

    Importante

    En una configuración de creación de reflejo compleja, alguna instancia de servidor podría seguir siendo el servidor principal original en una o varias sesiones de creación de reflejo. Repita los pasos 2 a 4 para esas instancias de servidor hasta que se actualicen todas las instancias implicadas.

  5. Reanude la sesión de creación de reflejo.

    Nota

    La conmutación automática por error no funcionará hasta que el testigo se haya actualizado y agregado de nuevo a la sesión de creación de reflejo.

  6. Actualice cualquier instancia de servidor que quede y sea testigo en todas sus sesiones de creación de reflejo. Cuando un testigo actualizado se vuelva a unir a una sesión de creación de reflejo, la conmutación automática por error vuelve a ser posible. Podría tener que actualizar varios servidores en este momento.

Para devolver una sesión al modo de alto rendimiento

  1. Si lo desea, vuelva al modo de alto rendimiento utilizando uno de los métodos siguientes:

    • En SQL Server Management Studio: cambie la opción Modo de funcionamiento a Rendimiento alto (asincrónico) mediante la página Creación de reflejo del cuadro de diálogo Propiedades de la base de datos.

    • En Transact-SQL: utilice ALTER DATABASE para desactivar la seguridad de las transacciones.

Para volver a agregar un testigo a una sesión de creación de reflejo

  1. Si lo desea, en modo de alta seguridad, restablezca el testigo en cada sesión de creación de reflejo.

    Para devolver un testigo

Consulte también

Actualización a SQL Server 2016 mediante el Asistente para instalación (programa de instalación)
Instalar SQL Server 2016 desde el símbolo del sistema
Reflejo de la base de datos ALTER DATABASE (Transact-SQL)
BACKUP (Transact-SQL)
Ver el estado de una base de datos reflejada (SQL Server Management Studio)
Creación de reflejo de la base de datos (SQL Server)
Conmutación de roles durante una sesión de creación de reflejo de la base de datos (SQL Server)
Forzar el servicio en una sesión de creación de reflejo de la base de datos (Transact-SQL)
Iniciar el Monitor de creación de reflejo de la base de datos (SQL Server Management Studio)
Database Mirroring Operating Modes