Guía de migración: SQL Server a Azure SQL Database

Se aplica a:SQL ServerAzure SQL Database

Con esta guía aprenderá a migrar la instancia de SQL Server a Azure SQL Database.

Puede migrar las instancias de SQL Server que se ejecutan de forma local o en:

  • SQL Server en Virtual Machines
  • Amazon EC2 (Elastic Compute Cloud)
  • Amazon RDS (Relational Database Service) para SQL Server
  • Google Compute Engine
  • Cloud SQL para SQL Server: GCP (Google Cloud Platform)

Para más información acerca de la migración, consulte Introducción a la migración: SQL Server a SQL Database. Para ver otras guías de migración, consulte Migración de bases de datos.

Diagram of migration process flow.

Requisitos previos

Para la migración de SQL Server a Azure SQL Database, asegúrese de que:

Antes de la migración

Después de comprobar que se admite el entorno de origen, comience con la fase previa a la migración. Detecte todos los orígenes de datos existentes, evalúe la viabilidad de la migración e identifique los problemas de bloqueo que podrían impedir la migración a la nube de Azure.

Descubra

En la fase de detección, examine la red para identificar todas las instancias y características de SQL Server que usa su organización.

Use Azure Migrate para evaluar la idoneidad de migración de los servidores locales, realizar ajustes de tamaño basados en el rendimiento y proporcionar estimaciones del costo que supone su ejecución en Azure.

También puede usar el kit de herramientas de evaluación y planeamiento de Microsoft ("kit de herramientas MAP") para evaluar la infraestructura de TI actual. El kit de herramientas proporciona una herramienta de inventario, evaluación y generación de informes eficaz para simplificar el proceso de planeamiento de la migración.

Para más información acerca de las herramientas disponibles para usar en la fase de detección, consulte Servicios y herramientas disponibles para escenarios de migración de datos.

Evaluar

Nota:

Si va a evaluar todo el patrimonio de datos de SQL Server a gran escala en VMware, use Azure Migrate para obtener recomendaciones de implementación de Azure SQL, el ajuste de tamaño de destino y las estimaciones mensuales.

Una vez detectados los orígenes de datos, evalúe cualquier base de datos de SQL Server local que se pueda migrar a Azure SQL Database para identificar los bloqueadores de la migración o los problemas de compatibilidad.

La extensión Azure SQL Migration para Azure Data Studio proporciona una experiencia sencilla basada en un asistente para evaluar, obtener recomendaciones de Azure y migrar las bases de datos de SQL Server locales a SQL Server en Azure Virtual Machines. Además, al resaltar los bloqueadores o advertencias de migración, la extensión también incluye una opción para que las recomendaciones de Azure recopilen los datos de rendimiento de las bases de datos para, de este modo, recomendar una instancia Azure SQL Managed Instance de tamaño adecuado acorde con las necesidades de rendimiento de su carga de trabajo (con el menor precio).

Puede usar la extensión de migración de Azure SQL para Azure Data Studio para evaluar las bases de datos que se van a obtener:

Para evaluar su entorno con la extensión de migración de Azure SQL, realice estos pasos:

  1. Abra la Extensión Azure SQL Migration para Azure Data Studio.
  2. Conéctese al origen de la instancia de SQL Server
  3. Haga clic en el botón Migrate to Azure SQL (Migrar a Azure SQL), en el Asistente para migración de Azure SQL en Azure Data Studio
  4. Seleccione las bases de datos para la valoración y, después, haga clic en siguiente
  5. Seleccione el destino de Azure SQL, en este caso, Azure SQL Database (versión preliminar)
  6. Haga clic en View/Select (Ver o seleccionar) para revisar el informe de valoración
  7. Busque problemas de bloqueo de migración y paridad de características. El informe de evaluación también se puede exportar a un archivo que se pueda compartir con otros equipos o con personal de la organización.
  8. Determine el nivel de compatibilidad de la base de datos que minimiza los esfuerzos posteriores a la migración.

Para obtener una recomendación de Azure mediante la extensión de migración de Azure SQL, siga estos pasos:

  1. Abra la Extensión Azure SQL Migration para Azure Data Studio.
  2. Conéctese al origen de la instancia de SQL Server
  3. Haga clic en el botón Migrate to Azure SQL (Migrar a Azure SQL), en el Asistente para migración de Azure SQL en Azure Data Studio
  4. Seleccione las bases de datos para la valoración y, después, haga clic en siguiente
  5. Seleccione el destino de Azure SQL, en este caso, Azure SQL Database (versión preliminar)
  6. Vaya a las secciones Recomendaciones de Azure y haga clic en Get Azure recommendation (Obtener recomendación de Azure)
  7. Seleccione Recopilar datos de rendimiento ahora. Seleccione una carpeta en el equipo local para almacenar los registros de rendimiento y, luego, elija Iniciar.
  8. Al cabo de 10 minutos, Azure Data Studio indica que hay una recomendación disponible para Azure SQL Database.
  9. Compruebe la tarjeta de Azure SQL Database, en el panel de destino de Azure SQL, para revisar la recomendación de SKU de Azure SQL Database

Para más información, consulte Tutorial: Migración de SQL Server a Azure SQL Database (versión preliminar) sin conexión mediante Azure Data Studio.

Si la valoración encuentra varios bloqueadores para confirmar que la base de datos no está lista para una migración de Azure SQL Database, considere también lo siguiente:

Evaluaciones y análisis a gran escala

La Extensión Azure SQL Migration para Azure Data Studio y Azure Migrate admiten la realización de valoraciones escaladas y la consolidación de los informes de valoración para su análisis.

Si tiene varios servidores y bases de datos que deben evaluarse y analizarse a gran escala para proporcionar una vista más amplia del estado de los datos, consulte los vínculos siguientes para más información:

Importante

La ejecución de evaluaciones a gran escala para varias bases de datos, especialmente las de gran tamaño, también se puede automatizar mediante la utilidad de la línea de comandos de DMA y su carga en Azure Migrate para análisis adicionales y para la preparación del destino.

Implementación en una instancia administrada con tamaño óptimo

Puede usar la extensión Azure SQL Migration para Azure Data Studio para obtener una recomendación de Azure SQL Managed Instance de tamaño adecuado. La extensión recopila datos de rendimiento de su instancia de SQL Server de origen para proporcionar una recomendación de tamaño adecuado de Azure que se ajuste a las necesidades de rendimiento de su carga de trabajo con un coste mínimo. Para obtener más información, consulte Obtención de una recomendación de Azure de tamaño correcto para las bases de datos de SQL Server locales

Según la información de la fase de descubrimiento y valoración, cree una instancia de Azure SQL Database de destino con el tamaño adecuado. Puede hacerlo mediante el Inicio rápido: Creación de una base de datos única: Azure SQL Database.

Migrar

Una vez completadas las tareas asociadas a la fase previa a la migración, está listo para realizar la migración del esquema y los datos.

Migre los datos con el método de migración elegido.

Migración con la extensión de migración de Azure SQL para Azure Data Studio

Para realizar una migración sin conexión con Azure Data Studio, siga los pasos de alto nivel que se indican a continuación. Para ver un tutorial detallado paso a paso, consulte Tutorial: Migración de SQL Server a Azure SQL Database (versión preliminar) sin conexión mediante Azure Data Studio.

  1. Descargue e instale Azure Data Studio y la extensión Azure SQL Migration.
  2. Inicie la migración en el asistente para migrar a Azure SQL en la extensión en Azure Data Studio.
  3. Seleccione las bases de datos cuya preparación o problemas para la migración desea evaluar (si los hay). Recopile, además, datos de rendimiento y obtenga recomendaciones de tamaño de Azure.
  4. Seleccione la cuenta de Azure y la instancia de Azure SQL Database de destino de la suscripción.
  5. Seleccione la lista de tablas que se van a migrar.
  6. Cree un nuevo servicio Azure Database Migration Service con el asistente de Azure Data Studio. Si ha creado previamente un servicio Azure Database Migration Service mediante Azure Data Studio, puede volver a usarlo si lo desea.
  7. Opcional: si las copias de seguridad se encuentran en un recurso compartido de red local, descargue e instale el entorno de ejecución de integración autohospedado en un equipo que pueda conectarse a la instancia de SQL Server de origen y la ubicación que contiene los archivos de copia de seguridad.
  8. Inicie la migración de la base de datos y supervise el progreso en Azure Data Studio. También puede supervisar el progreso en el recurso de Azure Database Migration Service en Azure Portal.

Sincronización y transición de datos

Al usar las opciones de migración que replican o sincronizan continuamente los cambios de datos del origen al destino, los datos y el esquema de origen pueden cambiar y desfasarse del destino. Durante la sincronización de datos, asegúrese de que todos los cambios en el origen se capturan y se aplican al destino durante el proceso de migración.

Después de comprobar que los datos son los mismos en el origen y en el destino, puede realizar la transición del entorno de origen al de destino. Es importante planear el proceso de transición con los equipos empresariales y de aplicaciones para garantizar que la interrupción mínima durante la transición no afecte a la continuidad empresarial.

Importante

Para más información sobre los pasos específicos asociados con la realización de una operación de transición como parte de las migraciones con DMS, consulte Realización de migración total.

Migrar usando la replicación transaccional

Si no se puede permitir quitar la base de datos de SQL Server de producción mientras se lleva a cabo la migración, puede usar la replicación transaccional de SQL Server como solución de migración. Para usar este método, la base de datos de origen debe cumplir los requisitos para la replicación transaccional y ser compatible con Azure SQL Database. Para obtener más información acerca de la replicación de SQL con grupos de disponibilidad, consulte Configurar la replicación para grupos de disponibilidad AlwaysOn (SQL Server).

Para usar esta solución, configurará la base de datos de Azure SQL Database como suscriptor de la instancia de SQL Server que quiere migrar. El distribuidor de la replicación transaccional sincroniza los datos de la base de datos de modo que estén sincronizados (el publicador) mientras se siguen las nuevas transacciones.

Con la replicación transaccional, todos los cambios en los datos o en el esquema se muestran en la base de datos de Azure SQL Database. Cuando finalice la sincronización y esté listo para realizar la migración, cambie la cadena de conexión de las aplicaciones para que apunten a la base de datos. Después de que la replicación transaccional recupere todos los cambios pendientes en la base de datos de origen y todas las aplicaciones apuntan a Azure SQL Database, puede desinstalar la replicación transaccional. La base de datos de Azure SQL es ahora el sistema de producción.

Sugerencia

También puede usar la replicación transaccional para migrar un subconjunto de la base de datos de origen. La publicación que se replica en Azure SQL Database puede limitarse a un subconjunto de las tablas de la base de datos que se replica. Para cada tabla que se replica, puede limitar los datos a un subconjunto de filas o un subconjunto de columnas.

Flujo de trabajo de replicación de transacciones

Importante

Use siempre la versión más reciente de SQL Server Management Studio para que pueda estar siempre al día de las actualizaciones de Azure y SQL Database. Las versiones anteriores de SQL Server Management Studio no pueden configurar la instancia de SQL Database como suscriptor. Obtenga la versión más reciente de SQL Server Management Studio.

Paso Método
Configuración de la distribución SQL Server Management Studio | Transact-SQL
Creación de una publicación SQL Server Management Studio | Transact-SQL
Creación de una suscripción SQL Server Management Studio | Transact-SQL

Algunas sugerencias y diferencias para migrar a SQL Database

  • Uso de un distribuidor local
    • Esto afecta al rendimiento del servidor.
    • Si el impacto en el rendimiento no es aceptable, puede usar otro servidor, pero hará más compleja la administración.
  • Cuando seleccione una carpeta de instantáneas, asegúrese de que la carpeta que seleccione sea lo suficientemente grande como para contener un BCP de cada tabla que desea replicar.
  • La creación de instantáneas bloquea las tablas asociadas hasta que se completa, por lo que debe programarse correctamente.
  • Azure SQL Database solo admite las suscripciones de inserción. Solo puede agregar suscriptores de la base de datos de origen.

Recomendaciones sobre migración

Para acelerar la migración a Azure SQL Database, debe tener en cuenta las siguientes recomendaciones:

Contención de recursos Recomendación
Origen (normalmente local) El cuello de botella principal durante la migración desde el origen es la latencia y la E/S del archivo de datos, que es necesario supervisar con cuidado. En función de la latencia y la E/S del archivo de datos, y en función de si se trata de una máquina virtual o un servidor físico, tendrá que ponerse en contacto con el administrador de almacenamiento y explorar las opciones para mitigar el cuello de botella.
Destino (Azure SQL Database) El factor de limitación más importante es la velocidad de generación de registros y la latencia del archivo de registro de la base de datos. Con Azure SQL Database, puede obtener un máximo de 96 MB/s de velocidad de generación de registros. Para acelerar la migración, escale verticalmente la base de datos de Azure SQL de destino a Crítico para la empresa Gen5 y 8 núcleos virtuales para obtener la velocidad de generación de registros máxima de 96 MB/s, que también proporciona una latencia baja para los archivos de registro. El nivel de servicio Hiperescala proporciona una velocidad de registro de 100 MB/s, independientemente del nivel de servicio elegido.
Network El ancho de banda de red necesario es igual a la velocidad de ingesta de registros máxima de 96 MB/s (768 Mb/s) En función de la conectividad de red desde el centro de datos local a Azure, compruebe el ancho de banda de red (normalmente Azure ExpressRoute) para adaptarse a la velocidad de ingesta máxima de registros.

También puede tener en cuenta estas recomendaciones para obtener el mejor rendimiento durante el proceso de migración.

  • Elija el mejor nivel de servicio y el tamaño de proceso mayor que su presupuesto le permita para optimizar el rendimiento de la transferencia. Una vez completada la migración, puede seleccionar una opción inferior para ahorrar dinero.
  • Si usa archivos BACPAC, reduzca la distancia entre su archivo BACPAC y el centro de datos de destino.
  • Deshabilite la actualización automática y cree automáticamente las estadísticas durante la migración.
  • Particione tablas e índices.
  • Quite las vistas indexadas y vuelva a crearlas cuando se haya completado el proceso.
  • Transfiera los datos históricos que se consultan con poca frecuencia a otra base de datos y migre estos datos históricos a otra base de datos de Azure SQL Database. A continuación, podrá consultar estos datos históricos mediante consultas elásticas.

Después de la migración

Cuando haya completado correctamente la fase de migración, deberá realizar las siguientes tareas posteriores a la migración para asegurarse de que todo funciona de manera fluida y eficaz.

La fase posterior a la migración es fundamental para reconciliar cualquier problema de precisión de datos y comprobar su integridad, así como para solucionar problemas de rendimiento con la carga de trabajo.

Actualizar estadísticas

Actualice las estadísticas con un examen completo una vez completada la migración.

Corrección de las aplicaciones

Cuando se hayan migrado los datos al entorno de destino, todas las aplicaciones que antes utilizaban el origen deben empezar a utilizar el destino. Para lograrlo será necesario en algunos casos realizar cambios en las aplicaciones.

Realización de pruebas

El método de prueba para la migración de bases de datos consta de las siguientes actividades:

  1. Desarrollar pruebas de validación: para probar la migración de bases de datos, debe utilizar consultas SQL. Debe crear las consultas de validación para que se ejecuten en las bases de datos de origen y destino. Las consultas de validación deben abarcar el ámbito definido.
  2. Configurar un entorno de prueba: el entorno de prueba debe contener una copia de la base de datos de origen y la base de datos de destino. Asegúrese de aislar el entorno de prueba.
  3. Ejecutar pruebas de validación: ejecute las pruebas de validación en el origen y el destino y, luego, analice los resultados.
  4. Ejecutar pruebas de rendimiento: ejecute la prueba de rendimiento en el origen y el destino y, luego, analice y compare los resultados.

Uso de características avanzadas

Asegúrese de aprovechar las características avanzadas basadas en la nube que ofrece SQL Database, como las de alta disponibilidad integrada, detección de amenazas y supervisión y ajuste de la carga de trabajo.

Algunas características de SQL Server solo están disponibles cuando el nivel de compatibilidad de la base de datos cambia al nivel de compatibilidad más reciente.

Para más información, consulte el artículo sobre la administración de Azure SQL Database después de la migración.

Solución de problemas de compatibilidad de migración de bases de datos

Puede encontrarse con toda una diversidad de problemas de compatibilidad, en función de la versión de SQL Server de la base de datos de origen y de la complejidad de la base de datos que se migra. Las versiones anteriores de SQL Server tienen más problemas de compatibilidad. Use los siguientes recursos, además de una búsqueda específica en Internet mediante el motor de búsqueda de opciones:

Importante

Instancia administrada de Azure SQL le permite migrar una instancia de SQL Server existente y sus bases de datos sin ningún problema de compatibilidad o con muy pocos. Consulte ¿Qué es Azure SQL Managed Instance?

Pasos siguientes

Consulte Servicios y herramientas disponibles para escenarios de migración de datos para obtener una matriz de los servicios y las herramientas de Microsoft y de otros fabricantes que están disponibles para ayudarle en diversos escenarios de migración de datos y bases de datos, además de las tareas especializadas.

Para más información sobre la extensión de migración de Azure SQL, consulte lo siguiente:

Para más información sobre Azure Migrate, consulte:

Para más información acerca de SQL Database, consulte:

Para más información sobre el marco y el ciclo de adopción de las migraciones en la nube, consulte:

Para evaluar el nivel de acceso de la aplicación, consulte Data Access Migration Toolkit (versión preliminar)

Para más información sobre cómo realizar pruebas A/B en la capa de acceso a datos, consulte Información general del Asistente para experimentación con bases de datos.