Uso de la extensión de migración de Azure SQL para migrar a Azure SQL Database

Completado

Si tiene la opción de dejar la base de datos sin conexión durante la migración a Azure, hay algunas herramientas que puede usar.

En el escenario de fabricación de bicicletas, la base de datos de recursos humanos se considera crítica para la empresa, pero se usa muy poco durante los fines de semana. Ha previsto ejecutar una migración sin conexión entre el viernes por la noche y el lunes por la mañana, pero quiere evaluar el mejor método de migración.

Se supone que todas las comprobaciones previas a la migración se han realizado con la extensión de migración de Azure SQL para Azure Data Studio o Azure Migrate. Este proceso garantiza que se solucionen los problemas de características y de compatibilidad.

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

La extensión de migración de Azure SQL para Azure Data Studio es una herramienta que le ayuda a prepararse para migrar las bases de datos de SQL Server a Azure. Evalúa la preparación para la migración, recomienda los mejores recursos de Azure para sus necesidades y facilita el proceso de migración. Se recomienda usar la extensión para las bases de datos de tamaño pequeño a mediano.

Captura de pantalla de la arquitectura de la extensión de migración de Azure SQL para Azure Data Studio.

La extensión de migración de Azure SQL usa la versión más reciente de Data Migration Services e incluye una característica de evaluación avanzada que permite evaluar si las bases de datos de SQL Server están listas para migrarse a Azure SQL.

Además, puede migrar varias bases de datos de SQL Server mediante la extensión de migración de Azure SQL sin cargo alguno.

En los pasos siguientes, se resalta el proceso de migración a Azure SQL Database con la extensión de migración de Azure SQL para Azure Data Studio.

Paso Descripción
Configuración Instale la extensión de migración de Azure SQL en Azure Data Studio. Abra Azure Data Studio e inicie el asistente para migrar a Azure SQL. Este asistente le guiará durante el proceso de migración.
Paso 1: Bases de datos para evaluación Elija las bases de datos que quiere migrar.
Paso 2: Resultados y recomendaciones de la evaluación Evalúe la preparación para la migración. La herramienta identifica los posibles problemas que podrían afectar al proceso de migración. Recopile datos de rendimiento de la base de datos actual. Estos datos se usan para proporcionar recomendaciones para la configuración de Azure SQL.
Paso 3: Destino de Azure Seleccione una cuenta de Azure y el destino de Azure SQL Database.
Paso 4: Azure Database Migration Service Seleccione una instancia de Azure Database Migration Service existente o cree una nueva.
Paso 5: Configuración del origen de datos Escriba las credenciales usadas para conectarse al origen desde el entorno de ejecución de integración autohospedado. Seleccione las tablas que se van a migrar desde el origen al destino. Antes de seleccionar las tablas que se van a migrar, asegúrese de que se haya creado el esquema de la base de datos desde el origen al destino mediante la extensión dacpac, la extensión SQL Database Projects en Azure Data Studio o DMA.
Paso 6: Resumen Revise la información de migración e inicie el proceso.

Database Migration Service optimiza el proceso de migración omitiendo tablas vacías, incluso si las selecciona.

Importante

Actualmente, Azure SQL Database no admite la migración de nombres de tabla que contengan caracteres de doble byte. Como solución alternativa, puede cambiar temporalmente el nombre de estas tablas antes de la migración y, una vez completada la migración, revertirlas a sus nombres originales.

Estado de migración

Hay algunos estados que le mantienen al tanto del progreso de migración.

  • Preparación para la copia: el servicio está en proceso de deshabilitar estadísticas automáticas, desencadenadores e índices en la tabla de destino.

  • Copiando: la copia de datos de la base de datos de origen a la base de datos de destino está en curso.

  • Copia finalizada: la copia de datos está finalizada y el servicio está esperando que otras tablas terminen de copiarse.

  • Regenerando índices: el servicio está regenerando los índices en las tablas de destino.

  • Correcto: todos los datos se copiaron y los índices se volvieron a generar.

Consideraciones de rendimiento

La velocidad de migración depende en gran medida del SKU de Azure SQL Database de destino y del host de entorno de ejecución de integración autohospedado. Se recomienda escalar verticalmente los recursos de proceso de Azure SQL Database antes de iniciar el proceso de migración para una experiencia de migración óptima.

Al decidir en qué servidor instalar el entorno de ejecución de integración autohospedado, asegúrese de que esta máquina pueda controlar la carga de CPU y memoria de la operación de copia de datos.

La migración a Azure SQL Database puede ser lenta cuando hay un gran volumen de tablas debido al tiempo que tarda Azure Data Factory (ADF) en iniciar actividades, incluso con tablas pequeñas.

Es posible que las tablas con columnas de blob grandes no se migren debido al tiempo de espera.

Se recomienda llevar a cabo un máximo de 10 migraciones de bases de datos simultáneas por entorno de ejecución de integración autohospedado en un solo equipo. Escale horizontalmente el entorno de ejecución autohospedado o cree instancias independientes en distintos equipos para aumentar las migraciones simultáneas de bases de datos.

Supervisión de la migración

Una vez que haya iniciado la migración de la base de datos, puede supervisar el progreso en Azure Data Studio. También puede realizar un seguimiento del progreso en Azure Portal en el recurso de Azure Database Migration Service.

Supervisión de la migración desde Azure Data Studio

En Estado de migración de las bases de datos, puede realizar un seguimiento de las migraciones en curso, completadas y con errores (si las hay), o puede ver todas las migraciones de base de datos.

  1. Seleccione Migraciones de base de datos en curso en el panel de migración para ver las migraciones en curso.

    Captura de pantalla del panel de migración en la extensión de migración de Azure para Azure Data Studio.

  2. Seleccione el nombre de la base de datos para obtener más detalles.

    Captura de pantalla de los detalles de migración en la extensión de migración de Azure para Azure Data Studio.

  3. El Estado de la migración cambiará a Completando y, luego, a Correcto después de que se haya completado la migración.

    Captura de pantalla de los detalles de la migración en la extensión de migración de Azure para Azure Data Studio, que muestra una migración completada.

Supervisión de la migración desde Azure Portal

Como alternativa, también puede supervisar la actividad de migración mediante Azure Database Migration Service.

Para supervisar la migración de la base de datos, normalmente iría a Azure Portal y buscaría la instancia del Database Migration Service. Una vez que haya localizado el servicio, puede ver la información general de la instancia. Seleccione Supervisar migraciones para acceder a la información detallada sobre la migración de bases de datos en curso.

Captura de pantalla de la página de supervisión en Azure Database Migration Services en Azure Portal.

Después de que el estado de migración sea Correcto, vaya al servidor de destino y valide la base de datos de destino. Compruebe el esquema y los datos de la base de datos.

Migrar a escala

También puede realizar una migración sin conexión de la base de datos desde SQL Server local a una instancia de Azure SQL Database mediante PowerShell o la CLI de Azure.

En el ejemplo siguiente, se migra la base de datos AdventureWorks a Azure SQL Database.


$sourcePass = ConvertTo-SecureString "password" -AsPlainText -Force
$targetPass = ConvertTo-SecureString "password" -AsPlainText -Force

New-AzDataMigrationToSqlDb `
-ResourceGroupName MyGroup `
-SqlDbInstanceName myserver `
-Kind "SqlDb" `
-TargetDbName AdventureWorks `
-SourceDatabaseName AdventureWorks `
-SourceSqlConnectionAuthentication SQLAuthentication `
-SourceSqlConnectionDataSource myserver.microsoft.com `
-SourceSqlConnectionUserName user `
-SourceSqlConnectionPassword $sourcePass `
-Scope "/subscriptions/MySubscriptionID/resourceGroups/MyGroup/providers/Microsoft.Sql/servers/myserver" `
-TargetSqlConnectionAuthentication SQLAuthentication `
-TargetSqlConnectionDataSource myserver.database.windows.net `
-TargetSqlConnectionUserName user `
-TargetSqlConnectionPassword $targetPass `
-MigrationService "/subscriptions/MySubscriptionID/resourceGroups/MyGroup/providers/Microsoft.DataMigration/SqlMigrationServices/MyService"

En el ejemplo siguiente, se migra un subconjunto de tablas de la base de datos AdventureWorks.


New-AzDataMigrationToSqlDb `
-ResourceGroupName MyGroup `
-SqlDbInstanceName myserver `
-Kind "SqlDb" `
-TargetDbName AdventureWorks `
-SourceDatabaseName AdventureWorks `
-SourceSqlConnectionAuthentication SQLAuthentication `
-SourceSqlConnectionDataSource myserver.microsoft.com `
-SourceSqlConnectionUserName user `
-SourceSqlConnectionPassword $sourcePass `
-Scope "/subscriptions/MySubscriptionID/resourceGroups/MyGroup/providers/Microsoft.Sql/servers/myserver" `
-TargetSqlConnectionAuthentication SQLAuthentication `
-TargetSqlConnectionDataSource myserver.database.windows.net `
-TargetSqlConnectionUserName user `
-TargetSqlConnectionPassword $targetPass `
-TableList "[Person].[Person]", "[Person].[EmailAddress]" `
-MigrationService "/subscriptions/MySubscriptionID/resourceGroups/MyGroup/providers/Microsoft.DataMigration/SqlMigrationServices/MyService"

Para obtener más información sobre los comandos de PowerShell y la CLI de Azure de la extensión de migración de Azure disponibles, consulte los vínculos siguientes: Módulo de PowerShell para la extensión de migración de datos y CLI de Azure para la extensión de migración de datos.