Guía de migración: de MySQL a SQL Server

Se aplica a:SQL Server

En esta guía, obtendrá información sobre cómo migrar las bases de datos MySQL a SQL Server.

Para obtener otras guías de migración, vea Guías de migración de bases de datos de Azure.

Requisitos previos

Antes de iniciar la migración de la base de datos MySQL a SQL Server:

Etapa anterior a la migración

Una vez que se hayan cumplido los requisitos previos, estará listo para descubrir el entorno de MySQL de origen y valorar la viabilidad de la migración.

Evaluar

Mediante SSMA para MySQL, puede revisar los datos y los objetos de las bases de datos, y evaluarlas para la migración.

Para crear una valoración:

  1. Abra SSMA para MySQL.

  2. En el menú Archivo, seleccione Nuevo proyecto.

  3. Escriba el nombre del proyecto, una ubicación para guardarlo y el destino de la migración. Después, seleccione SQL Server en la opción Migrate to (Migrar a).

    Screenshot that shows New Project option.

  4. En el cuadro de diálogo Connect to MySQL (Conectarse a MySQL), escriba los detalles de conexión y, después, conéctese al servidor MySQL.

    Screenshot that shows Connect to MySQL option.

  5. Seleccione las bases de datos MySQL que quiera migrar.

    Screenshot that shows selecting the MySQL database you want to migrate.

  6. Haga clic con el botón derecho en la base de datos MySQL en MySQL Metadata Explorer (Explorador de metadatos de MySQL) y seleccione Create Report (Crear informe). Como alternativa, puede seleccionar la pestaña Create Report (Crear informe) en la esquina superior derecha.

    Screenshot that shows Create Report feature.

  7. Revise el informe en HTML para comprender las estadísticas de conversión, y los errores o advertencias. También puede abrir el informe en Excel para obtener un inventario de objetos MySQL y conocer el esfuerzo necesario para realizar las conversiones de esquema. La ubicación predeterminada del informe es la carpeta de informes dentro de SSMAProjects, como se muestra a continuación:

    drive:\Users\<username>\Documents\SSMAProjects\MySQLMigration\report\report_2016_11_12T02_47_55\.

    Screenshot that shows a conversion report.

Validación de las asignaciones de tipos

Valide las asignaciones de tipos de datos predeterminadas y cámbielas según los requisitos, si es necesario. Para ello:

  1. En el menú Tools (Herramientas), seleccione Project Settings (Configuración del proyecto).

  2. Seleccione la pestaña Asignación de tipo.

    Screenshot that shows Type Mapping feature.

  3. Puede cambiar la asignación de tipos de cada tabla si la selecciona en MySQL Metadata Explorer (Explorador de metadatos de MySQL).

Para obtener más información sobre la configuración de la conversión en SSMA para MySQL, vea Configuración del proyecto (conversión) (MySQLToSQL).

Conversión del esquema

La conversión de objetos de base de datos toma las definiciones de los objetos de MySQL, los convierte en objetos de SQL Server similares y, después, carga esta información en los metadatos de SSMA para MySQL. No carga la información en la instancia de SQL Server. Después, puede ver los objetos y sus propiedades mediante el Explorador de metadatos de SQL Server.

Durante la conversión, SSMA para MySQL imprime los mensajes de salida en el panel de salida y los mensajes de error en el panel Error List (Lista de errores). Use la información de salida y de errores para determinar si tiene que modificar las bases de datos de MySQL o el proceso de conversión para obtener los resultados de conversión deseados.

Para convertir el esquema:

  1. (Opcional) Para convertir consultas dinámicas o ad hoc, haga clic con el botón derecho en el nodo y seleccione Agregar instrucción.

  2. Seleccione la pestaña Connect to SQL Server (Conectarse a SQL Server).

    1. Escriba los detalles de la conexión de la instancia de SQL Server.
    2. Seleccione la base de datos de destino en la lista desplegable, o bien escriba un nombre nuevo, en cuyo caso se creará una base de datos en el servidor de destino.
    3. Escriba los detalles de autenticación y, después, seleccione Connect (Conectar).

    Screenshot that shows Connect to SQL Server.

  3. Haga clic con el botón derecho en la base de datos MySQL en MySQL Metadata Explorer (Explorador de metadatos de MySQL) y, después, seleccione Convert Schema (Convertir esquema). Como alternativa, puede seleccionar la pestaña Convert Schema (Convertir esquema) en la esquina superior derecha.

    Screenshot that shows Convert Schema option.

  4. Una vez finalizada la conversión, compare y revise los objetos convertidos con los objetos originales para identificar posibles problemas y solucionarlos en función de las recomendaciones:

    Screenshot that shows comparing and reviewing objects.

  5. Compare el texto de Transact-SQL convertido con el código original y revise las recomendaciones.

    Screenshot that shows comparing and reviewing converted code.

  6. En el panel de resultados, seleccione Revisar resultados y revise los errores en el panel Lista de errores.

  7. Guarde el proyecto localmente para un ejercicio de corrección de esquema sin conexión. En el menú File (Archivo), seleccione Save Project (Guardar proyecto). Este paso le ofrece la oportunidad de evaluar los esquemas de origen y de destino sin conexión, y hacer correcciones antes de publicar el esquema en SQL Server.

Para obtener más información, consulte Convertir bases de datos de MySQL (MySQLToSQL).

Migración

Una vez que haya implementado los requisitos previos necesarios y completado las tareas asociadas a la fase previa a la migración, estará listo para realizar la migración del esquema y los datos.

Tiene dos opciones para la migración de los datos:

  • Migración de datos del lado cliente

    • Para realizar la migración de datos del lado cliente, seleccione la opción Client Side Data Migration Engine (Motor de migración de datos del lado cliente) en el cuadro de diálogo Project Settings (Configuración del proyecto).

    Nota:

    Cuando se usa la edición SQL Express como base de datos de destino, solo se permite la migración de datos del lado cliente y no la del lado servidor.

  • Migración de datos del lado servidor

    • Antes de realizar la migración de datos en el lado servidor, asegúrese de lo siguiente:
      • El paquete de extensión de SSMA para MySQL debe estar instalado en la instancia de SQL Server.
      • El servicio Agente SQL Server no debe estar ejecutándose en esta instancia de SQL Server.
    • Para realizar la migración de datos del lado servidor, seleccione la opción Server Side Data Migration Engine (Motor de migración de datos del lado servidor) en el cuadro de diálogo Project Settings (Configuración del proyecto).

Importante

Si tiene pensado usar el motor de migración de datos del lado servidor, antes de migrar los datos debe instalar el paquete de extensión de SSMA para MySQL y los proveedores de MySQL en el equipo en el que se ejecute SSMA para MySQL. El servicio Agente SQL Server también debe estar en ejecución. Para obtener más información sobre cómo instalar el paquete de extensión, consulte Instalación de componentes de SSMA en SQL Server (MySQLToSQL).

Para publicar el esquema y migrar los datos:

  1. Para publicar el esquema, haga clic con el botón derecho en la base de datos en SQL Server Metadata Explorer (Explorador de metadatos de SQL Server) y seleccione Synchronize with Database (Sincronizar con la base de datos). Esta acción publica la base de datos MySQL en la instancia de SQL Server.

    Screenshot that shows Synchronize with Database.

  2. Revise la asignación entre el proyecto de origen y el de destino.

    Screenshot that shows reviewing the synchronization with the database.

  3. Para migrar los datos, haga clic con el botón derecho en la base de datos o el objeto que quiera migrar en MySQL Metadata Explorer (Explorador de metadatos de MySQL) y seleccione Migrate data (Migrar datos). Como alternativa, puede seleccionar la pestaña Migrate Data. Para migrar datos de una base de datos completa, active la casilla situada junto al nombre de la base de datos. Para migrar datos de tablas concretas, expanda la base de datos, expanda Tablas y, a continuación, active las casillas que hay junto a las tablas. Para omitir datos de tablas concretas, desactive las casillas.

    Screenshot that shows Migrate Data option.

  4. Una vez que se haya completado la migración, podrá ver el Informe de migración de datos.

    Screenshot that shows the Data Migration Report.

  5. Conéctese a la instancia de SQL Server mediante SQL Server Management Studio (SSMS) y revise los datos y el esquema para validar la migración.

    Screenshot that shows validation in SQL Server Management Studio.

Después de la migración

Cuando haya completado correctamente la fase de migración, deberá realizar una serie de tareas posteriores para asegurarse de que todo funcione de la forma más fluida y eficaz posible.

Corrección de las aplicaciones

Después de migrar los datos al entorno de destino, todas las aplicaciones que antes utilizaban el origen deben empezar a usar el destino. Para lograr esta tarea, en algunos casos será necesario 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.

Optimización

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.

Nota:

Para obtener más información sobre estos problemas y los pasos para mitigarlos, consulte la Guía de optimización y validación posterior a la migración.

Recursos de migración

Para obtener más ayuda a fin de completar este escenario de migración, vea el recurso siguiente. Se ha desarrollado para ofrecer compatibilidad con la involucración de un proyecto de migración del mundo real.

Título 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 el nivel de corrección de la aplicación o base de datos para una carga de trabajo determinada. Ofrece funcionalidades sencillas de cálculo y generación de informes que ayudan a acelerar las evaluaciones de patrimonios de datos de gran volumen, ya que proporciona un proceso de toma de decisiones de plataforma de destino uniforme y automatizado.
Utilidad Comparación de bases de datos de MySQL a SQL Server La utilidad Comparación de bases de datos es una aplicación de consola de Windows que se puede usar para comprobar que los datos son idénticos en la plataforma de origen y en la de destino. Puede usar la herramienta para comparar de forma eficaz los datos hasta el nivel de fila o de columna de todas las tablas, filas y columnas o únicamente en las seleccionadas.

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.