Saltar al contenido

¿Cómo puedo actualizar o volver a la versión anterior de la edición del motor de SQL Server en RDS para SQL Server?

9 minutos de lectura
0

Quiero actualizar o volver a la versión anterior de la edición del motor de SQL Server en Amazon Relational Database Service (Amazon RDS) para Microsoft SQL Server.

Descripción corta

Amazon RDS para SQL Server admite las ediciones Express, Web, Standard y Enterprise. No puedes usar la consola de Amazon RDS ni la interfaz de la línea de comandos de AWS (AWS CLI) para realizar un cambio de edición de SQL Server como una modificación local.

Resolución

Nota: Si se muestran errores al poner en marcha comandos de AWS CLI, consulta Solución de errores de AWS CLI. Además, asegúrate de utilizar la versión más reciente de la AWS CLI.

Actualización de la edición del motor de SQL Server

Crea una instantánea de RDS de tu instancia de RDS para SQL Server existente y, a continuación, restaura una nueva instancia de RDS a partir de la instantánea. Para conocer las limitaciones de actualización, consulta Consideraciones sobre Microsoft SQL Server.

Sigue estos pasos:

  1. Crea una instantánea de la instancia original de RDS para SQL Server.
  2. Restaura la instantánea para crear una nueva instancia de RDS. Cuando restaures la instancia, selecciona una edición posterior de la base de datos.
  3. Cambia el nombre de la instancia original de RDS para SQL Server o elimínala para poder reutilizar el nombre del punto de enlace de DNS. Para obtener más información, consulta la sección Cambio de nombre de la instancia de RDS de este artículo.

Para actualizar de la edición Standard a la edición Enterprise, consulta Modificación de una instancia de Amazon RDS para SQL Server de la edición Standard a la edición Enterprise.

Puedes usar el mismo método de restauración e instantánea para los siguientes tipos de actualizaciones:

  • De la edición Standard a la edición Enterprise
  • De la edición Web a la edición Standard o Enterprise
  • De la edición Express a la edición Web, edición Standard o edición Enterprise

Nota: Al actualizar la edición, la restauración de instantáneas crea una nueva instancia de RDS para SQL Server. La nueva instancia tiene un punto de enlace de RDS diferente al de la instancia de origen de la instantánea.

Vuelta a una versión anterior de la edición de SQL Server

No se admite la vuelta a una versión anterior local de una instancia de RDS para SQL Server de ediciones posteriores a ediciones anteriores. Sin embargo, puedes completar cualquiera de los siguientes tipos de vuelta a una versión anterior:

  • De la edición Enterprise a la edición Standard, Web o Express
  • De la edición Standard a la edición Web o Express
  • De la edición Web a la edición Express

Para cambiar tu edición de RDS para SQL Server, utiliza la opción de copia de seguridad y restauración nativa, AWS Database Migration Service (AWS DMS) u otras herramientas. Elige una opción de vuelta a una versión anterior en función de factores como el tiempo de inactividad, el esfuerzo y la complejidad de su caso de uso.

Opción de copia de seguridad y restauración nativas en RDS para SQL Server

La copia de seguridad y la restauración nativas crean una copia de seguridad completa de las bases de datos en la instancia de RDS para SQL Server de origen existente.

Para volver a una versión anterior de una instancia Enterprise de origen a una instancia Standard de destino, sigue estos pasos:

  1. Crea una nueva instancia de base de datos de RDS para SQL Server con la edición Standard.
  2. Agrega la opción de copia de seguridad y restauración nativas en las instancias de las ediciones Enterprise de origen y Standard de destino.
  3. Realiza una copia de seguridad de cada base de datos de usuario de la instancia de Enterprise de origen en un bucket de Amazon Simple Storage Service (Amazon S3).
  4. Ejecuta la consulta sys.dm_dm_persisted_sku-features en cada base de datos de la instancia Enterprise de origen:
    USE database-name
        GO
        SELECT feature_name FROM sys.dm_db_persisted_sku_features;
        GO
    Nota: Sustituye database-name por el nombre de tu base de datos.
    La consulta anterior comprueba si hay alguna característica conectada actualmente a la edición posterior. Es posible que las características que están conectadas a la edición posterior no funcionen al restaurar las bases de datos en la instancia de destino de la edición anterior. Para obtener más información, consulta sys.dm_db_persisted_sku_features (Transact-SQL) en el sitio web de Microsoft.
  5. Restaura las copias de seguridad del bucket de Amazon S3 en la instancia Standard de destino.
  6. Crea los inicios de sesión y los usuarios necesarios en las bases de datos de la instancia Standard de destino. Además, crea el grupo de seguridad apropiado y adjunta los grupos de opciones de parámetros apropiados.

Nota: Puedes utilizar los pasos anteriores para exportar e importar bases de datos en cualquier edición de SQL Server en RDS.

AWS DMS

AWS DMS replica los cambios en curso de la instancia de la edición posterior a la instancia de la edición anterior. AWS DMS permite la replicación unidireccional y la carga masiva de tablas, y captura los cambios de datos admitidos.

Para obtener más información, consulta la siguiente documentación de AWS:

Otras herramientas para importar y exportar datos de SQL Server

También puedes usar las siguientes herramientas para importar y exportar la base de datos:

  • Asistente de importación y exportación de SQL Server
  • Asistente para generar y publicar scripts
  • Copia masiva (utilidad bcp)

Nota: Antes de usar cualquiera de las herramientas anteriores, debes iniciar la instancia con la edición anterior de SQL Server.

Cuando usas las herramientas para mover datos, es posible que surjan varios problemas de integridad o coherencia de los datos que debes resolver. Antes de usar una de las herramientas, prueba minuciosamente el proceso en un entorno de prueba.

Para el asistente de importación y exportación de SQL Server, crea y copia el esquema de las bases de datos y el objeto de la instancia de origen en la instancia de destino. A continuación, utiliza el asistente para copiar tablas, vistas o consultas de una instancia de base de datos de RDS para SQL Server en otro almacén de datos.

Para el asistente de generación y publicación de scripts de SQL Server y la utilidad bcp, utiliza el asistente para crear scripts para una base de datos completa o para objetos seleccionados. Puedes ejecutar los scripts en una instancia de base de datos de SQL Server de destino para recrear los objetos creados por scripts. A continuación, utiliza la característica de copia masiva para exportar los datos de los objetos seleccionados a la instancia de base de datos de destino. Ejecuta la utilidad bcp desde una instancia de Amazon Elastic Compute Cloud (Amazon EC2) que tenga conectividad con las instancias de RDS de origen y destino.

Cambio del nombre de la instancia de RDS

Todas las opciones anteriores dan como resultado la creación de una nueva instancia de RDS de destino. La nueva instancia de RDS tiene un punto de enlace de DNS de RDS diferente al de la instancia de RDS de origen existente.

A veces, cuando se actualiza el nuevo punto de enlace de RDS en todas las aplicaciones y servicios, la actualización de la cadena de conexión no se actualiza en un componente y se producen errores.

Para evitar este problema, se recomienda cambiar el nombre de las instancias de RDS de origen y destino. Al cambiar el nombre de las instancias, la instancia de la edición de destino tiene el mismo punto de enlace de DNS de RDS que la instancia de la edición de origen original. Por lo tanto, no es necesario cambiar las cadenas de conexión de las aplicaciones o servicios dependientes después de cambiar la edición.

Para cambiar el nombre de las instancias de RDS de origen y destino después de cambiar la edición, sigue estos pasos:

Nota: En el siguiente procedimiento de ejemplo, la instancia de RDS de origen es rds-original con la edición Enterprise y la instancia de destino es rds-new con la edición Standard.

  1. Detén todo el tráfico entrante a la instancia de origen rds-original.
  2. Actualiza o reduce la edición de SQL Server en la instancia de RDS.
    Nota: Después de actualizar o volver a una versión anterior, la instancia de origen es rds-original y la instancia de destino es rds-new.
  3. Modifica la instancia de origen para cambiar el nombre de la instancia de base de datos de rds-original a otro nombre, como rds-original-old.
  4. Cuando la instancia rds-original-old esté en el estado Disponible, cambia el nombre de la instancia de base de datos de destino de rds-new por el nombre original de la instancia de origen, rds-original.
  5. Confirma que las instancias hayan cambiado de nombre a rds-original-old y rds-original y que estén en el estado Disponible.
  6. Mantén los nuevos grupos de seguridad de la instancia de RDS de destino iguales a los de la instancia de origen para mantener la conectividad de red con las aplicaciones existentes.
  7. Permite el tráfico entrante a la instancia rds-original que tiene la edición de SQL Server requerida. No es necesario cambiar las cadenas de conexión de la aplicación porque RDS tiene el mismo punto de enlace de DNS que la instancia de origen.
  8. Realiza las pruebas de la aplicación para asegurarte de que el cambio en la edición de la instancia de RDS no provoque ningún error.
  9. Si no hay errores, crea una instantánea final de la instancia rds-original-old y elimina la instancia para reducir los costes.

Nota: Antes de implementar cambios en el entorno de producción, se recomienda probar las actividades en un entorno de prueba.

Información relacionada

Recomendaciones de AWS: evaluación de la vuelta a una versión anterior de Microsoft SQL Server de la edición Enterprise a la edición Standard en AWS