Cómo instalar un Service Pack en un sistema con un tiempo de inactividad mínimo para bases de datos reflejadas

En este tema se describe cómo minimizar el tiempo de inactividad de las bases de datos reflejadas cuando instale Service Packs o revisiones. Este proceso conlleva la actualización secuencial de las instancias de SQL Server 2008 R2 que forman parte de la creación de reflejo de la base de datos. Esta forma de actualización, que se conoce como actualización gradual, reduce el tiempo de inactividad a una única conmutación por error. Tenga en cuenta que para sesiones en modo de alto rendimiento en las que el servidor reflejado esté geográficamente distante del principal, una actualización gradual podría no ser adecuada.

Una actualización gradual es un proceso que consta de las siguientes etapas:

  • Protección de los datos.

  • Si la sesión incluye un testigo, recomendamos que lo quite. 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.

  • Si una sesión se está ejecutando en modo de alto rendimiento, cambie el modo de funcionamiento al modo de alta seguridad.

  • Actualice cada instancia del servidor implicada en la creación de reflejo de la base de datos. Una actualización gradual conlleva la actualización de la instancia del servidor que es actualmente el servidor reflejado, la conmutación manual por error de cada una de sus bases de datos reflejadas y la actualización de la instancia del servidor que primero era el servidor principal (y es ahora el nuevo servidor reflejado). En este momento, tendrá que reanudar la creación de reflejo.

    Nota

    Antes de iniciar una actualización gradual, recomendamos que realice un ejercicio de conmutación manual por error en al menos una de las sesiones de creación de reflejo.

  • Revierta al modo de alto rendimiento, si es necesario.

  • Devuelva al testigo a la sesión de creación de reflejo, si es necesario.

A continuación se describen los procedimientos para estas fases.

Nota importanteImportante

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 Sesiones de creación de reflejo de la base de datos.

Para proteger los datos antes de una actualización (práctica recomendada)

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

    Para realizar una copia de seguridad de una base de datos

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

Para quitar un testigo de una sesión

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

Para realizar la actualización gradual

  1. Para minimizar 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, instale el Service Pack o la revisión en dicha instancia del servidor.

    • 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, realice una conmutación por error manualmente de sus bases de datos principales y actualice la instancia del servidor instalando el Service Pack o la revisión.

    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.

    Para realizar una conmutación manual por error

    Para obtener más información acerca del funcionamiento de la conmutación manual por error, vea Conmutación por error manual.

  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.

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

  4. Instale el Service Pack o la revisión en cada una de las instancias del servidor que actualmente sean servidor reflejado, para todas aquellas sesiones de reflejado en las que sea un asociado. Podría tener que actualizar varios servidores en este momento.

    Nota importanteImportante

    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 se haya actualizado el testigo.

  6. Instale el Service Pack o la revisión en el resto de instancias del servidor que sean testigo para todas las sesiones 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

  • 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) utilizando 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 devolver un testigo a una sesión de creación de reflejo