Información general sobre la migración: de SQL Server a Azure SQL Database

Se aplica a:Azure SQL Database

Obtenga información sobre las opciones y consideraciones para migrar las bases de datos de SQL Server a Azure SQL Database.

Puede migrar las bases de datos de SQL Server que se ejecutan 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 ver otras guías de migración, consulte Migración de bases de datos.

Información general

Azure SQL Database es una opción de destino recomendada para cargas de trabajo de SQL Server que requieren una plataforma como servicio (PaaS) totalmente administrada. SQL Database maneja la mayoría de las funciones de administración de bases de datos. También cuenta con funcionalidades integradas de alta disponibilidad, procesamiento de consultas inteligentes, escalabilidad y rendimiento para adaptarse a numerosos tipos de aplicaciones.

SQL Database proporciona flexibilidad con varios modelos de implementación y niveles de servicio que satisfacen diferentes tipos de aplicaciones o cargas de trabajo.

Una de las ventajas clave de migrar a SQL Database es que puede modernizar la aplicación mediante las funcionalidades de PaaS. Después, puede eliminar cualquier dependencia en los componentes técnicos cuyo ámbito se encuentre en el nivel de instancia, como los trabajos del Agente SQL.

También puede ahorrar costos mediante la Ventaja híbrida de Azure para SQL Server para migrar las licencias locales de SQL Server a Azure SQL Database. Esta opción está disponible si elige el modelo de compra basado en núcleo virtual.

Asegúrese de revisar las características del motor de base de datos de SQL Server disponibles en Azure SQL Database para validar la compatibilidad del destino de migración.

Consideraciones

Los factores clave que hay que tener en cuenta al evaluar las opciones de migración son los siguientes:

  • Número de servidores y bases de datos
  • Tamaño de las bases de datos
  • Tiempo de inactividad empresarial aceptable durante el proceso de migración

Las opciones de migración que se enumeran en esta guía tienen en cuenta estos factores. Para que la migración de datos lógicos a Azure SQL Database, el tiempo de migración puede depender del número de objetos de una base de datos y del tamaño de la base de datos.

Hay herramientas disponibles para diferentes cargas de trabajo y preferencias de usuario. Algunas herramientas se pueden utilizar para realizar una migración rápida de una sola base de datos a través de una herramienta basada en la interfaz de usuario. Otras herramientas pueden automatizar la migración de varias bases de datos para controlar las migraciones a escala.

Elección de un destino adecuado

Tenga en cuenta las directrices generales para ayudarle a elegir el modelo de implementación y el nivel de servicio adecuados de Azure SQL Database. Puede elegir recursos de almacenamiento y proceso durante la implementación y, posteriormente, cambiarlos mediante Azure Portal, sin provocar tiempo de inactividad de la aplicación.

Modelos de implementación: comprenda la carga de trabajo de la aplicación y el patrón de uso para decidir entre una sola base de datos o un grupo elástico.

  • Una base de datos única representa una base de datos totalmente administrada adecuada para la mayoría de las aplicaciones y los microservicios en la nube modernos.
  • Un grupo elástico es una colección de bases de datos únicas con un conjunto compartido de recursos, como la CPU o la memoria. Es adecuado para combinar bases de datos en un grupo con patrones de uso predecibles que pueden compartir de manera efectiva el mismo conjunto de recursos.

Modelos de compra: elija entre núcleo virtual, la unidad de transacción de base de datos (DTU) o modelos de compra sin servidor.

  • El modelo de núcleo virtual le permite elegir el número de núcleos virtuales para Azure SQL Database, por lo que es la opción más sencilla para la conversión desde SQL Server local. Esta es la única opción que permite ahorrar costos de licencia con la Ventaja híbrida de Azure.
  • El modelo de DTU abstrae los recursos de proceso, memoria y E/S subyacentes para proporcionar una DTU combinada.
  • El modelo sin servidor es para cargas de trabajo que requieren un escalado automático a petición con recursos de proceso facturados por segundo de uso. El nivel de proceso sin servidor pausa automáticamente las bases de datos durante períodos de inactividad (cuando solo se factura el almacenamiento). Reactiva automáticamente las bases de datos cuando se reanuda la actividad.

Niveles de servicio: elija entre tres niveles de servicio diseñados para diferentes tipos de aplicaciones.

  • El nivel de servicio De uso general/Estándar ofrece una opción equilibrada orientada al presupuesto con el proceso y el almacenamiento adecuados para ofrecer aplicaciones en los niveles intermedio e inferior. La redundancia está integrada en el nivel de almacenamiento para recuperarse de errores. Está diseñado para la mayoría de las cargas de trabajo de base de datos.
  • El nivel de servicio Crítico para la empresa/Premium es para las aplicaciones de alto nivel que requieren velocidades altas de transacción, E/S de baja latencia y un alto nivel de resistencia. Las réplicas secundarias están disponibles para la conmutación por error y para descargar las cargas de trabajo de lectura.
  • El nivel de servicio Hiperescala esta destinado para todos los clientes que requieren un mayor rendimiento y disponibilidad, copias de seguridad y restauración rápidas o almacenamiento rápido y escalabilidad de procesos. Entre ellos se incluyen clientes que se trasladan a la nube para modernizar sus aplicaciones y clientes que ya usan otros niveles de servicio en Azure SQL Database. El nivel de servicio Hiperescala admite una amplia gama de cargas de trabajo de base de datos, desde OLTP puro hasta análisis puros. Está optimizado para cargas de trabajo olTP y transacciones híbridas y procesamiento analítico (HTAP).

Importante

La velocidad del registro de transacciones se rige en Azure SQL Database para limitar las altas tasas de ingesta. Por lo tanto, durante la migración, puede que tenga que escalar recursos de base de datos de destino (núcleos virtuales o DTU) para aliviar la presión de la CPU o el rendimiento. Elija la base de datos de destino de tamaño adecuado, pero planee el escalado de los recursos para la migración si es necesario.

Alternativa a las VM con SQL Server

Su empresa podría tener requisitos que hagan de SQL Server en Azure Virtual Machines un destino más adecuado que Azure SQL Database.

Si se aplica alguna de las siguientes condiciones a su empresa, considere la posibilidad de pasar a una máquina virtual (VM) de SQL Server en su lugar:

  • Si necesita acceso directo al sistema operativo o al sistema de archivos, por ejemplo, para instalar agentes personalizados o de otros fabricantes en la misma máquina virtual con SQL Server.
  • Si las características tienen dependencias estrictas que aún no se admiten, por ejemplo, FileStream o FileTable, PolyBase y transacciones entre instancias.
  • Si necesita permanecer en una versión específica de SQL Server (2012, por ejemplo).
  • Si los requisitos de proceso son mucho menores que los que la instancia administrada ofrece (un núcleo virtual, por ejemplo) y la consolidación de la base de datos no es una opción aceptable.

Herramientas de migración

Se recomiendan las siguientes herramientas de migración:

Technology Descripción
Azure Migrate Este servicio de Azure le ayuda a detectar y evaluar su patrimonio de datos de SQL a escala en VMware. Proporciona recomendaciones de implementación de Azure SQL, el tamaño de destino y las estimaciones mensuales.
Extensión Azure SQL Migration para Azure Data Studio Con tecnología de Azure Database Migration Service, la extensión de migración de Azure SQL para Azure Data Studio le ayuda a evaluar los requisitos de la base de datos para comprender la preparación de la migración, obtener las recomendaciones del tamaño adecuado de SKU para los recursos de Azure y migrar la base de datos de SQL Server a Azure. Puede migrar bases de datos únicas o a gran escala mediante PowerShell y la CLI de Azure.

En la tabla siguiente se enumeran las herramientas de migración alternativas:

Technology Descripción
Replicación transaccional Replique los datos de las tablas de base de datos de SQL Server de origen a Azure SQL Database al mismo tiempo que mantiene la coherencia transaccional. Para ello, proporcione una opción de migración de tipo publicador y suscriptor. Los cambios de datos incrementales se propagan a los suscriptores a medida que se producen en los publicadores.
Servicio de importación y exportación/BACPAC Un BACPAC es un archivo de Windows con una extensión .bacpac que encapsula el esquema y los datos de una base de datos. Puede usar el archivo BACPAC para exportar datos de una instancia de SQL Server de origen e importarlo a Azure SQL Database. Un archivo BACPAC se puede importar en una nueva base de datos SQL a través de Azure Portal.

Para el escalado y el rendimiento de tamaños de bases de datos grandes o un gran número de bases de datos, considerar la posibilidad de emplear la herramienta de línea de comandos SqlPackage para exportar e importar bases de datos.
Copia masiva La herramienta del programa de copia masiva (BCP) copia datos de una instancia de SQL Server a un archivo de datos. Emplee la herramienta para exportar los datos del origen e importar el archivo de datos en la base de datos SQL de destino.

En el caso de las operaciones de copia masiva de alta velocidad para trasladar datos a Azure SQL Database, puede usar la herramienta Smart Bulk Copy para maximizar la velocidad de transferencia mediante el aprovechamiento de las tareas de copia paralelas.
Azure Data Factory La actividad de copia de Azure Data Factory migra los datos de las bases de datos de SQL Server de origen a Azure SQL Database mediante conectores integrados y una instancia de Integration Runtime.

Data Factory admite una amplia gama de conectores para trasladar datos de orígenes de SQL Server a Azure SQL Database.
SQL Data Sync SQL Data Sync es un servicio integrado en Azure SQL Database que le permite sincronizar los datos seleccionados de forma bidireccional en varias bases de datos, tanto locales como en la nube.
Data Sync es útil en casos en los que los datos deben mantenerse actualizados en varias bases de datos de Azure SQL Database o SQL Server.

Comparación de las opciones de migración

Compare las opciones de migración para elegir la ruta de acceso adecuada para las necesidades de su empresa.

En la tabla siguiente se comparan las opciones de migración recomendadas:

Opción de migración Cuándo se usa Consideraciones
Azure Migrate - Detección y evaluación de bases de datos únicas o a gran escala de diferentes entornos. - Todos los pasos previos a la migración, como la detección, las evaluaciones y el ajuste de tamaño correcto de los recursos locales, se incluyen para la infraestructura, los datos y las aplicaciones.
Extensión Azure SQL Migration para Azure Data Studio - Migración de bases de datos únicas o a escala.
: solo modo sin conexión.

Orígenes admitidos:
- SQL Server (2008 y versiones posteriores) local o en Azure Virtual Machines
- SQL Server en Amazon EC2
- Amazon RDS para SQL Server
- SQL Server en Google Compute Engine
- Las migraciones a gran escala se pueden automatizar mediante PowerShell o la CLI de Azure.

- El tiempo para completar la migración depende del tamaño y del número de objetos de la base de datos.

- Azure Data Studio es necesario cuando no se usan ni PowerShell ni la CLI de Azure.

En la tabla siguiente se comparan las opciones de migración alternativas:

Método o tecnología Cuándo se usa Consideraciones
Replicación transaccional - Migración mediante la publicación continua de los cambios de las tablas de base de datos de origen a las tablas de base de datos de SQL Database de destino.
: migraciones de base de datos completas o parciales de las tablas seleccionadas (subconjunto de una base de datos).

Orígenes admitidos:
- - SQL Server (de 2016 a 2019) con algunas limitaciones
- AWS EC2
- GCP Compute SQL Server VM
- La configuración es relativamente compleja en comparación con otras opciones de migración.
: proporciona una opción de replicación continua para migrar datos (sin desconectar las bases de datos).
: la replicación transaccional tiene limitaciones que se deben tener en cuenta al configurar el publicador en la instancia de SQL Server de origen. Consulte Limitaciones en la publicación de objetos para obtener más información.
- Es posible supervisar la actividad de replicación.
Servicio de importación y exportación/BACPAC - Migración de bases de datos individuales de la aplicación de línea de negocio.
- Adecuado para bases de datos más pequeñas.
: no se requieren herramientas ni servicios de migración independientes.

Orígenes admitidos:
- SQL Server (de 2005 a 2019) local o Azure VM
- AWS EC2
- AWS RDS
- GCP Compute SQL Server VM
- Requiere tiempo de inactividad, ya que los datos se deben exportar en el origen e importar en el destino.
: los formatos de archivo y los tipos de datos que se usan en la exportación o importación deben ser coherentes con los esquemas de la tabla para evitar errores de incoherencia de tipo de datos o truncamiento.
: el tiempo necesario para exportar una base de datos con un gran número de objetos puede ser mucho mayor.
Copia masiva - Migraciones de datos completas o parciales.
: puede admitir tiempo de inactividad.

Orígenes admitidos:
- SQL Server (de 2005 a 2019) local o Azure VM
- AWS EC2
- AWS RDS
- GCP Compute SQL Server VM
- Requiere tiempo de inactividad para exportar datos del origen e importarlos en el destino.
: los formatos de archivo y los tipos de datos que se usan en la exportación o importación deben ser coherentes con los esquemas de la tabla.
Azure Data Factory - Migración o transformación de datos desde las bases de datos de SQL Server de origen.
- La combinación de datos de varios orígenes de datos en Azure SQL Database normalmente es para cargas de trabajo de inteligencia empresarial (BI).
- Requiere la creación de canalizaciones de movimiento de datos en Data Factory para trasladar datos del origen al destino.
- El costo es una consideración importante y se basa en factores como los desencadenadores de canalización, las ejecuciones de actividad y la duración del movimiento de datos.
SQL Data Sync - Sincronización de datos entre las bases de datos de origen y de destino.
- Adecuado para ejecutar la sincronización continua entre Azure SQL Database y SQL Server local en un flujo bidireccional.
- Azure SQL Database debe ser la base de datos central para la sincronización con una base de datos de SQL Server local como base de datos miembro.
- En comparación con la replicación transaccional, SQL Data Sync admite la sincronización de datos bidireccional entre el entorno local y Azure SQL Database.
- Puede tener un mayor impacto en el rendimiento en función de la carga de trabajo.

Interoperabilidad de las características

Existen más consideraciones a la hora de migrar las cargas de trabajo que dependen de otras características de SQL Server.

SQL Server Integration Services

Migre los paquetes de SQL Server Integration Services (SSIS) a Azure mediante la reimplementación de los paquetes en el entorno de ejecución de SSIS de Azure en Azure Data Factory. Para admitir la migración de paquetes SSIS, Azure Data Factory proporciona un tiempo de ejecución creado para ejecutar paquetes SSIS en Azure. Como alternativa, puede volver a escribir la lógica ETL (extraer, transformar, cargar) de SSIS de forma nativa en Azure Data Factory mediante flujos de datos.

SQL Server Reporting Services

Migre informes de SQL Server Reporting Services (SSRS) a informes paginados en Power BI. Use la herramienta de migración de RDL para ayudar a preparar y migrar los informes. Microsoft desarrolló esta herramienta para ayudar a los clientes a migrar informes del lenguaje RDL (Report Definition Language) desde sus servidores SSRS a Power BI. Está disponible en GitHub y documenta un tutorial de un extremo a otro del escenario de migración.

Alta disponibilidad

La configuración manual de la alta disponibilidad de SQL Server incluye instancias de clúster de conmutación por error de Always On y Grupos de disponibilidad Always On pasa a ser obsoleto en la base de datos SQL de destino. La arquitectura de alta disponibilidad ya está integrada en los niveles de servicio De uso general (modelo de disponibilidad estándar) y Crítico para la empresa (modelo de disponibilidad prémium) para Azure SQL Database. El nivel de servicio Crítico para la empresa/Premium también proporciona escalado de lectura que permite conectarse a uno de los nodos secundarios para fines de solo lectura.

Además de la arquitectura de alta disponibilidad que se incluye en Azure SQL Database, la característica de grupos de conmutación por error te permite administrar la replicación y la conmutación por error de las bases de datos a un servidor en otra región.

Inicios de sesión y grupos

Puesto que Azure SQL Database no admite inicios de sesión, cree un inicio de sesión de Microsoft Entra ID (antes llamado Azure Active Directory). Vuelva a crear manualmente los inicios de sesión de SQL.

Trabajos del Agente SQL

Los trabajos del Agente SQL no se admiten directamente en Azure SQL Database y deben implementarse en trabajos de base de datos elástica (versión preliminar).

Bases de datos del sistema

Para Azure SQL Database, las únicas bases de datos del sistema aplicables son master y tempdb. Para más información, consulte Tempdb en Azure SQL Database.

Características avanzadas

Asegúrese de aprovechar las características avanzadas basadas en la nube de SQL Database. Por ejemplo, no necesita preocuparse por la administración de copias de seguridad, ya que el servicio la hace automáticamente. Puede realizar la restauración a cualquier momento dado dentro del período de retención.

Para reforzar la seguridad, considere la posibilidad de usar la autenticación de Microsoft Entra, la auditoría, ladetección de amenazas, la seguridad de nivel de fila y el enmascaramiento dinámico de datos.

Además de la administración avanzada y las características de seguridad, SQL Database ofrece herramientas avanzadas que pueden ayudarle a supervisar y optimizar la carga de trabajo. Azure SQL Analytics (versión preliminar) es una solución avanzada que se utiliza para supervisar el rendimiento de todas las bases de datos de Azure SQL Database a escala, entre varias suscripciones y en una vista única. Azure SQL Analytics recopila y visualiza métricas clave del rendimiento con inteligencia integrada para solucionar problemas de rendimiento.

Ajuste automáticosupervisa continuamente el rendimiento del plan de ejecución de SQL y corrige automáticamente los problemas de rendimiento identificados.

Recursos de migración

Para obtener más ayuda, consulte los siguientes recursos, que se desarrollaron para proyectos de migración reales.

Recurso Descripción
Herramienta y modelo de evaluación de la carga de trabajo de datos Esta herramienta proporciona sugerencias de plataformas de destino "ideales", preparación para la nube y un nivel de corrección de la aplicación o base de datos para una carga de trabajo. Ofrece un cálculo sencillo con un solo clic y una función de generación de informes que ayuda a acelerar las evaluaciones de grandes volúmenes, ya que proporciona un proceso de toma de decisiones de plataforma de destino uniforme y automatizado.
Creación masiva de bases de datos con PowerShell Puede usar un conjunto de tres scripts de PowerShell que crean un grupo de recursos (create_rg.ps1), el servidor lógico de Azure (create_sqlserver.ps1) y una base de datos SQL (create_sqldb.ps1). Los scripts incluyen funcionalidades de bucle para que pueda iterar y crear tantos servidores y bases de datos como sea necesario.
Implementación masiva de esquemas con MSSQL-Scripter y PowerShell Este recurso crea un grupo de recursos, crea uno o varios servidores lógicos en Azure para hospedar Azure SQL Database, exporta todos los esquemas de una instancia de SQL Server local (o varias instancias de SQL Server [2005 y posteriores]) y los importa en Azure SQL Database.
Conversión de trabajos del Agente SQL Server en trabajos de base de datos elástica Este script migra los trabajos de Agente SQL Server de origen a trabajos de base de datos elástica.
Utilidad de migración de inicios de sesión de SQL Server local a Azure SQL Database Un script de PowerShell puede crear un script de comandos de T-SQL para volver a crear inicios de sesión y seleccionar usuarios de base de datos de SQL Server local para Azure SQL Database. La herramienta permite la asignación automática de cuentas de Windows Server Active Directory a cuentas de Microsoft Entra, junto con la migración de inicios de sesión nativos de SQL Server.
Automatización de la colección de datos de PerfMon mediante Logman Puede usar la herramienta Logman para recopilar datos de Perfmon (para ayudarle a comprender el rendimiento de línea base) y obtener recomendaciones de destino para la migración. Esta herramienta utiliza el archivo logman.exe para crear el comando que creará, iniciará, detendrá y eliminará el conjunto de contadores de rendimiento en una instancia de SQL Server remota.

El equipo de ingeniería de datos SQL ha desarrollado estos recursos. El objetivo principal de este equipo es permitir y acelerar la modernización compleja de los proyectos de migración de la plataforma de datos a la de Azure, de Microsoft.

Pasos siguientes