Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Puede usar Azure Database Migration Service (Azure DMS) a través de Azure Portal para migrar bases de datos desde una instancia local de SQL Server a ¿Qué es SQL Server en Máquinas virtuales Windows de Azure? (VM de Azure) con un tiempo de inactividad mínimo.
Para ver otros métodos de migración de bases de datos que pueden requerir alguna configuración manual, consulte el artículo Migración de instancias de SQL Server a SQL Server en Azure Virtual Machines.
En este tutorial, migrará la AdventureWorks2025 base de datos de una instancia local de SQL Server a una máquina virtual de SQL Server en Azure con un tiempo de inactividad mínimo mediante Azure DMS.
Nota:
En este tutorial se usa el modo de migración sin conexión, que incluye un tiempo de inactividad aceptable durante el proceso de migración. Para ver las opciones de migración en línea, consulte Tutorial: Migración de SQL Server a SQL Server en una máquina virtual de Azure con Azure DMS (en línea).
En este tutorial, aprenderá a:
- Inicie el Asistente para migrar a Azure SQL en Azure Portal.
- Especifique los detalles de la instancia de SQL Server de origen, la ubicación de copia de seguridad y el SQL Server de destino en la máquina virtual de Azure.
- Configure el asistente para acceder al servidor de origen y a las copias de seguridad.
- Inicio y supervisión del progreso de la migración
- Realizar la migración total cuando esté listo.
Opciones de migración
En la sección siguiente se describe cómo usar Azure Database Migration Service con la extensión de migración de Azure SQL o en Azure Portal.
Prerrequisitos
Antes de comenzar el tutorial:
Asegúrese de que puede acceder a Azure Portal.
Asegúrese de que el proveedor de recursos Microsoft.DataMigration esté registrado en la suscripción.
Disponga de una cuenta de Azure que esté asignada a uno de los siguientes roles integrados:
Colaborador para la instancia de destino de SQL Server en una máquina virtual de Azure y para la cuenta de almacenamiento donde carga los archivos de copia de seguridad de la base de datos desde un recurso compartido de red de bloque de mensajes del servidor (SMB).
Rol de lector para el grupo de recursos de Azure que contiene la instancia de destino de SQL Server en una máquina virtual de Azure o para la cuenta de Azure Storage.
Propietario o Colaborador de la suscripción de Azure.
Como alternativa al uso de uno de estos roles integrados, puede asignar roles personalizados.
Cuando se usa Azure Portal para migrar, el usuario que ha iniciado sesión debe tener acceso lector de datos de Storage Blob en el contenedor de blobs que contiene los archivos de copia de seguridad, para poder enumerar archivos y carpetas durante la configuración de la migración.
Cree una instancia de destino de SQL Server en Azure Virtual Machines.
Si tiene una máquina virtual de Azure existente, regístrela con la extensión Agente de IaaS de SQL Server en modo de administración completa.
Asegúrese de que los inicios de sesión que usa para conectarse a la instancia de SQL Server de origen son miembros del rol de servidor sysadmin o tienen
CONTROL SERVERpermiso.Proporcione un recurso compartido de red SMB, un recurso compartido de archivos de cuenta de Azure Storage o un contenedor de blobs de cuenta de Azure Storage que contenga los archivos de copia de seguridad completa de la base de datos y los posteriores archivos de copia de seguridad del registro de transacciones. Azure DMS usa la ubicación de copia de seguridad durante la migración de la base de datos.
Use siempre una cuenta de almacenamiento dedicada para la migración. Compartirlo con otras cargas de trabajo puede provocar conflictos y riesgos de seguridad.
Una vez finalizada la migración, gire la clave de cuenta de almacenamiento para proteger las copias de seguridad o elimine la cuenta de almacenamiento si ya no es necesaria.
Azure DMS no realiza copias de seguridad de base de datos y no inicia ninguna copia de seguridad de base de datos en su nombre. En su lugar, el servicio usa archivos de copia de seguridad de base de datos existentes para la migración.
Si los archivos de copia de seguridad de la base de datos están en un recurso compartido de red SMB, cree una cuenta de Azure Storage que permita a Azure DMS cargar los archivos de copia de seguridad de la base de datos y migrar bases de datos. Asegúrese de crear la cuenta de Azure Storage en la misma región donde cree la instancia de Azure DMS.
Puede escribir cada copia de seguridad en un archivo de copia de seguridad independiente o en varios archivos de copia de seguridad. No se admite la anexión de varias copias de seguridad, como el registro completo y de transacciones, en un único medio de copia de seguridad.
Puede proporcionar copias de seguridad comprimidas para reducir la probabilidad de experimentar problemas asociados a la migración de copias de seguridad de gran tamaño.
Asegurarse de que la cuenta de servicio que ejecuta la instancia de SQL Server de origen tenga permisos de lectura y escritura en el recurso compartido de red SMB que contiene los archivos de copia de seguridad de la base de datos.
Si va a migrar una base de datos protegida por cifrado de datos transparente (TDE), migre el certificado de la instancia de SQL Server de origen a SQL Server en una máquina virtual de Azure antes de migrar los datos. Para obtener más información, consulte Traslado de una base de datos protegida por TDE a otra instancia de SQL Server.
Sugerencia
Si la base de datos contiene datos confidenciales protegidos por Always Encrypted, el proceso de migración migra automáticamente las claves de Always Encrypted a la instancia de destino de SQL Server en una máquina virtual de Azure.
Si las copias de seguridad de la base de datos están en un recurso compartido de archivos de red, proporcione una máquina para instalar el entorno de ejecución de integración autohospedado con el fin de acceder a las copias de seguridad de la base de datos y migrarlas. El Asistente para migración proporciona el vínculo de descarga y las claves de autenticación para descargar e instalar el entorno de ejecución de integración autohospedado.
Como preparación para la migración, asegúrese de que el equipo en el que va a instalar el entorno de ejecución de integración autohospedado tenga habilitados los siguientes nombres de dominio y reglas de firewall de salida:
Nombres de dominio Puerto de salida Description Nube pública: {datafactory}.{region}.datafactory.azure.net
o*.frontend.clouddatahub.net
Azure Government:{datafactory}.{region}.datafactory.azure.us
Microsoft Azure operado por 21Vianet:{datafactory}.{region}.datafactory.azure.cn443 Requerido por el entorno de ejecución de integración autohospedado para conectarse a Azure DMS.
En el caso de una factoría de datos recién creada en una nube pública, busque el nombre de dominio completo (FQDN) desde la clave del entorno de ejecución de integración autohospedado, en el formato{datafactory}.{region}.datafactory.azure.net.
En el caso de una factoría de datos existente, si no ve el nombre de dominio completo en dicha clave, use*.frontend.clouddatahub.neten su lugar.download.microsoft.com443 Lo necesita el entorno de ejecución de integración autohospedado para descargar las actualizaciones. Si deshabilita la actualización automática, puede omitir la configuración de este dominio. *.core.windows.net443 Usado por el entorno de ejecución de integración autohospedado que se conecta a la cuenta de Azure Storage para cargar copias de seguridad de base de datos desde el recurso compartido de red Sugerencia
Si ya almacena los archivos de copia de seguridad de la base de datos en una cuenta de Azure Storage, no necesita un entorno de ejecución de integración autohospedado durante el proceso de migración.
Si usa un entorno de ejecución de integración autohospedado, asegúrese de que el equipo donde está instalado pueda conectarse a la instancia de SQL Server de origen y al recurso compartido de archivos de red donde se encuentran los archivos de copia de seguridad.
Habilite el puerto 445 de salida para permitir el acceso al recurso compartido de archivos de red. Para más información, consulte recomendaciones para usar un entorno de ejecución de integración autohospedado.
Si usa Azure DMS por primera vez, asegúrese de que el
Microsoft.DataMigrationproveedor de recursos está registrado en la suscripción.
Inicio de una nueva migración
En este tutorial se describe una migración sin conexión de SQL Server a SQL Server en una máquina virtual de Azure.
Para iniciar una nueva migración:
Vaya a Azure Database Migration Service en Azure Portal. Use +Crear para crear una nueva instancia de Database Migration Service o seleccione una instancia existente. A continuación, vaya a la instancia de Database Migration Service.
En el panel Información general de la instancia de Azure DMS, seleccione Nueva migración.
En Seleccionar nuevo escenario de migración, elija el origen, el tipo de servidor de destino, la ubicación de almacenamiento de archivos de copia de seguridad, el modo de migración como migración sin conexión y elija Seleccionar.
Las copias de seguridad de la base de datos se pueden ubicar en un recurso compartido de red local o en un contenedor de blobs de Azure Storage.
En el modo de migración sin conexión, la base de datos de SQL Server de origen no debe usarse para la actividad de escritura mientras se restauran los archivos de copia de seguridad de la base de datos en la instancia de destino de SQL Server en una máquina virtual de Azure. El tiempo de inactividad de la aplicación dura desde el comienzo hasta la finalización del proceso de migración.
En el Asistente de migración en línea de blobs de VM de Azure SQL, siga estos pasos:
En la pestaña Detalles del origen, escriba los detalles de la instancia de SQL Server de origen y, a continuación, seleccione Siguiente: Conectarse al origen de SQL Server.
En la pestaña Seleccionar destino de migración , escriba los detalles de la suscripción, el grupo de recursos y la máquina virtual de SQL Server de destino. A continuación, seleccione Siguiente: Configuración del origen de datos.
Use siempre una cuenta de almacenamiento dedicada para la migración. Compartirlo con otras cargas de trabajo puede provocar conflictos y riesgos de seguridad.
Una vez finalizada la migración, gire la clave de cuenta de almacenamiento para proteger las copias de seguridad o elimine la cuenta de almacenamiento si ya no es necesaria.
Azure DMS no realiza copias de seguridad de base de datos y no inicia ninguna copia de seguridad de base de datos en su nombre. En su lugar, el servicio usa archivos de copia de seguridad de base de datos existentes para la migración.
Si los archivos de copia de seguridad de la base de datos están en un recurso compartido de red SMB, cree una cuenta de Azure Storage que permita a Azure DMS cargar los archivos de copia de seguridad de la base de datos y migrar bases de datos. Asegúrese de crear la cuenta de Azure Storage en la misma región donde cree la instancia de Azure DMS.
Puede escribir cada copia de seguridad en un archivo de copia de seguridad independiente o en varios archivos de copia de seguridad. No se admite la anexión de varias copias de seguridad, como el registro completo y de transacciones, en un único medio de copia de seguridad.
Puede proporcionar copias de seguridad comprimidas para reducir la probabilidad de experimentar problemas asociados a la migración de copias de seguridad de gran tamaño.
En el paso Configuración del origen de datos , seleccione la ubicación de las copias de seguridad de la base de datos. Las copias de seguridad de la base de datos se pueden ubicar en un recurso compartido de red local o en un contenedor de blobs de Azure Storage.
Si proporciona las copias de seguridad de la base de datos en un recurso compartido de red local, configure un entorno de ejecución de integración autohospedado en el paso siguiente del asistente. Necesita un entorno de ejecución de integración autohospedado para acceder a las copias de seguridad de la base de datos de origen, comprobar la validez del conjunto de copia de seguridad y cargar copias de seguridad en la cuenta de almacenamiento de Azure. Si las copias de seguridad de la base de datos ya están en un contenedor de blobs de Azure Storage, no necesita un entorno de ejecución de integración autohospedado.
En el caso de las copias de seguridad almacenadas en un contenedor de blobs de Azure Storage, escriba o seleccione la siguiente información:
Nombre Description Grupo de recursos Grupo de recursos donde se encuentran los archivos de copia de seguridad. Detalles de la cuenta de almacenamiento La cuenta de almacenamiento donde se encuentran los archivos de copia de seguridad. Contenedor de blobs Contenedor de blobs donde se encuentran los archivos de copia de seguridad. Folder Carpeta donde se encuentran los archivos de copia de seguridad. Último archivo de copia de seguridad El nombre de archivo de la última copia de seguridad de la base de datos que va a migrar. Nombre de la base de datos de destino Puede modificar el nombre de la base de datos de destino durante el proceso de migración. Si la funcionalidad de comprobación de bucle invertido está habilitada y el SQL Server y el recurso compartido de archivos de origen están en el mismo equipo, el origen no puede acceder al recurso compartido de archivos con el FQDN. Para corregir este problema, deshabilite la funcionalidad de comprobación de bucle invertido.
En el caso de las copias de seguridad que se encuentran en un recurso compartido de red, escriba la siguiente información adicional en las páginas correspondientes.
Nombre Description Nombre del servidor de origen FQDN o IP del servidor de origen. Asegúrese de que la cuenta de servicio que ejecuta la instancia de SQL Server de origen tiene privilegios de lectura en el recurso compartido de red. Tipo de autenticación Seleccione el tipo de autenticación: SQL o Windows. Credenciales de origen: nombre de usuario La credencial (autenticación de Windows y SQL) para conectarse a la instancia de SQL Server de origen y validar los archivos de copia de seguridad. Credenciales de origen: contraseña La credencial (autenticación de Windows y SQL) para conectarse a la instancia de SQL Server de origen y validar los archivos de copia de seguridad. Ubicación del recurso compartido de red que contiene las copias de seguridad Ubicación del recurso compartido de red que contiene los archivos de copia de seguridad completa y del registro de transacciones. El proceso de migración omite automáticamente los archivos de copia de seguridad o archivos no válidos del recurso compartido de red que no pertenecen al conjunto de copia de seguridad válido. Cuenta de usuario de Windows con acceso de lectura a la ubicación del recurso compartido de red Credencial de Windows (nombre de usuario) que tiene acceso de lectura al recurso compartido de red para recuperar los archivos de copia de seguridad. Contraseña Credencial de Windows (contraseña) que tiene acceso de lectura al recurso compartido de red para recuperar los archivos de copia de seguridad. Nombre de la base de datos de destino Puede modificar el nombre de la base de datos de destino durante el proceso de migración.
Escenarios de almacenamiento de copia de seguridad
La extensión de migración de Azure SQL para Azure Data Studio no requiere configuraciones específicas en la configuración de red de la cuenta de Azure Storage para migrar las bases de datos de SQL Server a Azure.
Asegúrese de que los recursos pueden acceder a la cuenta de Azure Storage. En función de la ubicación de copia de seguridad de la base de datos y la configuración de red de la cuenta de almacenamiento deseada, consulte la tabla siguiente para los distintos escenarios de migración y configuraciones de red:
| Scenario | Recurso compartido de red SMB. | Contenedor de cuenta de Azure Storage |
|---|---|---|
| Habilitado desde todas las redes | Sin pasos adicionales | Sin pasos adicionales |
| Habilitado desde redes virtuales y direcciones IP seleccionadas | Entorno de ejecución de integración autohospedado local (SHIR) | Copias de seguridad almacenadas en el contenedor de Azure Storage |
| Habilitado desde redes virtuales y direcciones IP seleccionadas + punto de conexión privado | Entorno de ejecución de integración autohospedado (SHIR) de máquina virtual de Azure | Copias de seguridad almacenadas en el contenedor de Azure Storage (punto de conexión privado) |
- SHIR en las instalaciones
- SHIR de máquina virtual de Azure
- Azure Storage
- Azure Storage (punto de conexión privado)
Entorno de ejecución de integración local autohospedada (SHIR)
Si instala el SHIR en sus instalaciones, siga estos pasos:
Conéctese a Azure Portal desde la máquina SHIR.
Abra la cuenta de Azure Storage y vaya al panel Redes .
Asegúrese de que el acceso a la red pública esté establecido en Habilitado desde redes virtuales seleccionadas y direcciones IP.
En la sección Firewall , active la casilla Agregar la dirección IP del cliente .
Escriba la dirección IP del cliente de la máquina host y seleccione Guardar.
Creación de una instancia de Azure Database Migration Service
Paso 1: en Azure Portal, acceda a Azure Database Migration Service. Cree una nueva instancia de Azure Database Migration Service o reutilice una instancia existente anteriormente creada.
Uso de una instancia existente de Database Migration Service
Para usar una instancia existente de Database Migration Service, siga estos pasos:
En Azure Portal, en Azure Database Migration Services, seleccione una instancia existente de Database Migration Service que desee usar; asegúrese de que esté presente en el grupo de recursos y la región adecuados.
Creación de una nueva instancia de Database Migration Service
Para crear una nueva instancia de Database Migration Service, siga estos pasos:
En Azure Portal, en Azure Database Migration Service, seleccione Crear.
En Seleccionar escenario de migración y Database Migration Service, configure la entrada deseada como «Tipo de servidor de origen y destino», elija Database Migration Service y escoja Seleccionar.
En la siguiente pantalla, Crear Data Migration Service, seleccione la suscripción y el grupo de recursos y, a continuación, seleccione Ubicación e introduzca el nombre del Database Migration Service. Seleccione Revisar + crear. De este modo, se crea el Azure Database Migration Service.
Si se requiere el entorno de ejecución de integración autohospedado (SHIR), seleccione Entorno de ejecución de integración en la sección de configuración de la página de información general de su Database Migration Service y complete los pasos siguientes:
Seleccione Configuración y escoja el vínculo Descargar e instalar el entorno de ejecución de integración para abrir el vínculo de descarga en un explorador web. Descargue el entorno de ejecución de integración y, luego, instálelo en un equipo que cumpla los requisitos previos para la conexión con la instancia de SQL Server de origen. Para más información, consulte Recomendaciones de SHIR.
Una vez completada la instalación, se abre automáticamente Microsoft Integration Runtime Configuration Manager para iniciar el proceso de registro.
En la tabla Clave de autenticación, copie una de las claves de autenticación que se proporcionan en el asistente y péguela en Microsoft Integration Runtime Configuration Manager.
Si la clave de autenticación es válida, aparece una marca de verificación verde en Integration Runtime Configuration Manager. Una marca verde de verificación indica que puede continuar con el registro.
Después de registrar el entorno de ejecución de integración autohospedado, cierre Microsoft Integration Runtime Configuration Manager. Los detalles del nodo pueden tardar varios minutos en reflejarse en Azure Portal para Database Migration Service, en Configuración > Entorno de ejecución de integración.
Nota:
Para obtener más información sobre el entorno de ejecución de integración autohospedado, vea Creación y configuración de un entorno de ejecución de integración autohospedado.
Inicio de la migración de la base de datos
En la pestaña Resumen de la migración de base de datos , revise los detalles y seleccione Iniciar migración. El servicio inicia la migración de la base de datos y le lleva automáticamente al panel de Azure DMS.
Supervisión de la migración de la base de datos
Para supervisar la migración de la base de datos, en el panel Información general de la instancia de DMS, seleccione Supervisar migraciones.
En la pestaña Migraciones, puede efectuar un seguimiento de las migraciones en curso, completadas y con errores (si las hay), o puede ver todas las migraciones de base de datos. En la barra de menús, seleccione Actualizar para actualizar el estado de la migración.
Azure DMS devuelve el estado de migración conocido más reciente cada vez que se actualiza el estado de migración. En la tabla siguiente se describen los posibles estados:
| Estado | Description |
|---|---|
| Recepcionado | El archivo de copia de seguridad llegó a la ubicación de copia de seguridad de origen y se validó. |
| Carga | El entorno de ejecución de integración está cargando el archivo de copia de seguridad en Azure Storage. |
| Cargado | El archivo de copia de seguridad se cargó en Azure Storage. |
| Restaurar | El servicio restaura el archivo de copia de seguridad en SQL Server en una máquina virtual de Azure. |
| Restaurado | El archivo de copia de seguridad se restauró correctamente en SQL Server en una máquina virtual de Azure. |
| Cancelado | Se ha cancelado el proceso de migración. |
| Omitido | El archivo de copia de seguridad se omitió porque no pertenece a una cadena de copia de seguridad de base de datos válida. |
Una vez restauradas todas las copias de seguridad de base de datos en la instancia de SQL Server en una máquina virtual de Azure, Azure DMS inicia una migración automática para asegurarse de que la base de datos migrada esté lista para usarse. El estado de la migración cambia de En curso a Correcto.
Limitaciones
Si migra una base de datos única, debe colocar las copias de seguridad de la base de datos en una estructura de archivos planos dentro de una carpeta de base de datos (incluida la carpeta raíz del contenedor). No se pueden anidar estas carpetas, ya que no se admite el anidamiento.
Si migra varias bases de datos con el mismo contenedor de Azure Blob Storage, debe colocar los archivos de copia de seguridad de las distintas bases de datos en carpetas independientes dentro del contenedor.
No se pueden sobrescribir las bases de datos existentes en el servidor SQL Server de destino en una máquina virtual de Azure mediante DMS.
Azure DMS no admite la configuración de alta disponibilidad y recuperación ante desastres en el destino para que coincida con la topología de origen.
No se admiten los siguientes objetos de servidor:
- trabajos del Agente SQL Server
- Credentials
- Paquetes de SQL Server Integration Services (SSIS)
- Auditoría de servidor
No puede usar un entorno de ejecución de integración autohospedado existente creado a partir de Azure Data Factory (ADF) para migraciones de bases de datos con DMS. Inicialmente, debe crear el entorno de ejecución de integración autohospedado mediante la extensión de migración de Azure SQL en Azure Data Studio. Puede reutilizarla para realizar más migraciones de bases de datos.
Las máquinas virtuales con versiones de destino de SQL Server 2008 y versiones anteriores no se admiten al migrar a SQL Server en una máquina virtual de Azure.
Si usa una máquina virtual con SQL Server 2012 o SQL Server 2014, debe almacenar los archivos de copia de seguridad de la base de datos de origen en un contenedor de blobs de Azure Storage en lugar de usar la opción de recurso compartido de red. Almacene los archivos de copia de seguridad como blobs en páginas, ya que los blobs en bloques solo se admiten en SQL Server 2016 y versiones posteriores.
Debe asegurarse de que la extensión agente de IaaS de SQL Server en la máquina virtual de Azure de destino está en modo completo en lugar del modo ligero.
La migración a una máquina virtual de Azure SQL mediante DMS usa el agente iaaS de SQL Server internamente. La extensión agente iaaS de SQL Server solo admite la administración de la instancia de servidor predeterminada o de una sola instancia con nombre.
Puede migrar un máximo de 100 bases de datos a la misma máquina virtual de Azure que el destino mediante una o varias migraciones simultáneamente. Además, una vez finalizada una migración con 100 bases de datos, espere al menos 30 minutos antes de iniciar una nueva migración a la misma instancia de SQL Server en una máquina virtual de Azure que el destino. Además, cada operación de migración (iniciar la migración, transición) para cada base de datos tarda unos minutos secuencialmente. Por ejemplo, para migrar 100 bases de datos, puede tardar aproximadamente 200 (2 x 100) minutos en crear las colas de migración y aproximadamente 100 (1 x 100) minutos para recortar todas las 100 bases de datos (excepto el tiempo de copia de seguridad y restauración). Por tanto, la migración es más lenta a medida que aumenta el número de bases de datos. Debe programar una ventana de migración más larga de antemano en función de las rigurosas pruebas de migración o crear particiones de un gran número de bases de datos en lotes al migrarlas a SQL Server en una máquina virtual de Azure.
Además de configurar las redes o firewall de la cuenta de Azure Storage para permitir que la máquina virtual acceda a los archivos de copia de seguridad, también debe configurar las redes o el firewall de sql Server en una máquina virtual de Azure para permitir la conexión saliente a la cuenta de almacenamiento.
Debe mantener activada la máquina virtual de Azure de destino mientras la migración de SQL Server está en curso. Además, al crear una nueva migración, conmute por error o cancele la migración.
Posibles mensajes de error
Error de inicio de sesión del usuario "NT Service\SQLIaaSExtensionQuery
Error: Login failed for user 'NT Service\SQLIaaSExtensionQuery
Motivo: La instancia de SQL Server está en modo de usuario único. Una posible razón es que la máquina virtual de SQL Server de destino está en modo de actualización.
Solución: espere a que la máquina virtual de SQL Server de destino salga del modo de actualización y vuelva a iniciar la migración.
No se pudo crear el trabajo de restauración
Error: Ext_RestoreSettingsError, message: Failed to create restore job.;Cannot create file 'F:\data\XXX.mdf' because it already exists.
Solución: conéctese a la máquina virtual de SQL Server de destino y elimine el XXX.mdf archivo. A continuación, vuelva a iniciar la migración.
Contenido relacionado
- Migrar una base de datos de SQL Server a SQL Server en una máquina virtual
- ¿Qué es SQL Server en Azure Windows Virtual Machines?
- Conexión a una máquina virtual de SQL Server en Azure
- Problemas conocidos, limitaciones y solución de problemas
- Migrar una base de datos a SQL Server en Azure Virtual Machines mediante el comando T-SQL RESTORE