por Luis Ramirez

En esta área he notado un poco de confusión de como las actualizaciones en SQL Server funcionan y creo que sería bueno aclarar.

Instalación de actualizaciones

Empecemos indicando que los paquetes de Servicios (Service Packs – SP) y las actualizaciones acumulativas (Cummulative updates - CU) para SQL Server funcionan igual.

A diferencia de parches de sistema Operativo, estas actualizaciones son POR INSTANCIA y no POR SERVIDOR. Al correr el instalador te mostrara las instancias corriendo en el servidor y será cuestión del usuario si quiere instalar en todas o sólo en una instancia el parche de actualización.

Ejemplificando, suponiendo un servidor SQL corriendo 3 instancias en diferentes niveles de parches (SQL 2005):

image

Si se quiere actualizar, supongamos la instancia INST2 a SP3 (9.00.4035), iniciaríamos la instalación del parche en el servidor, tomando en cuenta que no por el hecho de correr el instalador garantiza que las 3 instancias serán actualizadas a este nivel. Sino que en el instalador se seleccionaría solo la instancia INST2 y esta será la única que este en SP3 (9.00.4035) dejando las demás en el mismo nivel.

image

¿Porque se hace esto? Porque para ciertos clientes es importante por cuestiones de compatibilidad de aplicaciones o seguridad tener ciertas instancias en un nivel especifico.

En un cluster aplica el mismo concepto, pero resaltando que los parches son “Cluster Aware”, esto es, sabe que es un Cluster y detectara los nodos involucrados con la instancia. La instalación del parche se inicia en el nodo donde la INSTANCIA esta ACTIVA ,de ahí empieza actualizando los archivos binarios en los nodos pasivos para terminar en el nodo ACTIVO.

Siguiendo el ejemplo anterior:

Tenemos un cluster de dos nodos con 3 instancias, INST1 y INST3 activas en Servidor_A INST2 activa en Servidor_B

image

Digamos que escogemos actualizar INST3 con SP3 (9.00.4035).

Empezaríamos por ejecutar el instalador en SERVIDOR_A (donde INST3 esta activa), y es lo mismo que en un Servidor “Stand Alone” no por el hecho de correr el instalador en SERVIDOR_A significa que TODAS las instancias en este servidor (activas o no) serán actualizadas y después habrá que hacer el mismo procedimiento en Servidor_B.

Aquí el procedimiento seria que en el instalador seleccionaríamos la instancia INST3 y lo que pasa a continuación es lo siguiente:

  • El instalador indicaría los componentes de la instancia a actualizar y AUTOMATICAMENTE iniciaría la actualización de los binarios de INST3 en el nodo pasivo Servidor_B . Una vez terminado los nodos pasivos, finalizaría actualizando los binarios en el nodo activo Servidor_A.
  • Al terminar tendríamos INST3 en nivel 9.00.4035 en AMBOS servidores y las demás instancias seguirán en su mismo nivel.

image

Recuerda

  • Herramientas clientes como SQL Server Studio Management, Server Business Intelligence Development Studio (BIDS)., etc también se les debe aplicar los parches.
  • Nosotros siempre recomendamos actualizar en un ambiente de PRUEBA antes de hacerlo en PRODUCCION para revisar el impacto que pudiera tener.
  • Tomar las precauciones necesarias haciendo los respaldos pertinentes.
  • Correr los parches con una cuenta que sea Administrador local y SA de SQL Server.
  • Algunos parches requerirán de reinicio de servicios y/o servidor

Mas información