Migración de la base de datos de Azure Database for MySQL: servidor flexible mediante importación y exportación

SE APLICA A: Azure Database for MySQL: servidor único Azure Database for MySQL: servidor flexible

Importante

El servidor único de Azure Database for MySQL está en la ruta de retirada. Se recomienda encarecidamente actualizar al servidor flexible de Azure Database for MySQL. Para más información sobre la migración al servidor flexible de Azure Database for MySQL, consulte ¿Qué ocurre con Azure Database for MySQL con servidor único?

En este artículo se explican dos enfoques comunes para importar y exportar datos a una instancia de servidor flexible de Azure Database for MySQL mediante MySQL Workbench.

Para obtener instrucciones de migración detalladas y completas, consulte los recursos de la guía de migración.

Para otros escenarios de migración, consulte la Guía de migración de Azure Database.

Requisitos previos

Antes de empezar a migrar la base de datos MySQL, debe hacer lo siguiente:

Creación de una base de datos en la instancia de servidor flexible de Azure Database for MySQL

Cree una base de datos vacía en la instancia de servidor flexible de Azure Database for MySQL mediante MySQL Workbench, Toad o Navicat. La base de datos puede tener el mismo nombre que la base de datos que contiene los datos volcados, o puede crear una base de datos con un nombre diferente.

Para conectarse, haga lo siguiente:

  1. En Azure Portal, busque la información de conexión en el panel Información general de la instancia de servidor flexible de Azure Database for MySQL.

    Screenshot of the Azure Database for MySQL flexible server instance connection information in the Azure portal.

  2. Agregue la información de conexión a MySQL Workbench.

    Screenshot of the MySQL Workbench connection string.

Determinación de cuándo utilizar las técnicas de importación y exportación

Sugerencia

En el caso de los escenarios en los que quiera volcar y restaurar toda la base de datos, use el enfoque volcado y restauración en su lugar.

En los siguientes escenarios, use herramientas de MySQL para importar y exportar bases de datos en su base de datos MySQL. Para otras herramientas, vaya a la sección "Métodos de migración" (página 22) de la Guía de migración de MySQL a Azure Database.

  • Cuando necesite elegir de forma selectiva algunas tablas para importar desde una base de datos MySQL existente en la base de datos de servidor flexible de Azure Database for MySQL, es mejor usar la técnica de importación y exportación. Con ello, podrá omitir todas las tablas que no sean necesarias de la migración para ahorrar tiempo y recursos. Por ejemplo, use el modificador --include-tables o --exclude-tables con mysqlpump y el modificador --tables con mysqldump.
  • Si va a mover objetos de base de datos que no sean tablas, deberá crearlos explícitamente. Incluya restricciones (clave principal, clave externa e índices), vistas, funciones, procedimientos, desencadenadores y cualquier otro objeto de base de datos que desee migrar.
  • Si va a migrar datos desde orígenes de datos externos que no sean una base de datos de MySQL, cree archivos planos e impórtelos mediante el uso de mysqlimport.

Importante

Tanto el servidor único de Azure Database for MySQL como el servidor flexible de Azure Database for MySQL solo admiten el motor de almacenamiento InnoDB. Asegúrese de que todas las tablas de la base de datos usan el motor de almacenamiento InnoDB al cargar datos en la instancia de servidor flexible de Azure Database for MySQL.

Si la base de datos de origen usa otro motor de almacenamiento, realice la conversión al motor InnoDB antes de migrar la base de datos. Por ejemplo, si tiene WordPress o una aplicación web que utiliza el motor MyISAM, convierta primero las tablas migrando los datos en tablas de InnoDB. Use la cláusula ENGINE=INNODB para configurar el motor para crear una nueva tabla y luego transfiera los datos a la tabla compatible antes de la migración.

INSERT INTO innodb_table SELECT * FROM myisam_table ORDER BY primary_key_columns

Recomendaciones de rendimiento para la importación y exportación

Para un rendimiento óptimo de importación y exportación de datos, se recomienda hacer lo siguiente:

  • Cree los índices agrupados y las claves principales antes de cargar los datos. Cargue los datos en el orden de la clave principal.
  • Retrase la creación de índices secundarios hasta después de que se hayan cargado los datos.
  • Deshabilite las restricciones de clave externa antes de cargar los datos. El hecho de deshabilitar las comprobaciones de las claves externas favorece un aumento significativo del rendimiento. Habilite las restricciones y compruebe los datos después de la carga para garantizar la integridad referencial.
  • Cargue los datos en paralelo. Evite demasiado paralelismo ya que podría provocar que se alcanzara un límite de recursos, y supervise los recursos mediante las métricas disponibles en Azure Portal.
  • Use tablas con particiones cuando sea necesario.

Importación y exportación de datos con MySQL Workbench

Hay dos maneras de exportar e importar datos en MySQL Workbench: desde el menú contextual del examinador de objetos o desde el panel Navegador. Cada método sirve para un propósito diferente.

Nota:

Si va a agregar una conexión a un servidor único de Azure Database for MySQL o a un servidor flexible de Azure Database for MySQL en MySQL Workbench, haga lo siguiente:

  • En el caso del servidor único de Azure Database for MySQL, asegúrese de que el nombre de usuario está en el formato <username@servername>.
  • Para el servidor flexible de Azure Database for MySQL, use solo el <nombre de usuario> . Si usa< username@servername> conectarse, se producirá un error en la conexión.

Ejecución de los asistentes para la exportación e importación de datos de tablas mediante el menú contextual del examinador de objetos

Screenshot of the MySQL Workbench export and import wizard commands on the object browser's context menu.

Los asistentes para datos de tablas admiten operaciones de importación y exportación mediante archivos CSV y JSON. Los asistentes incluyen varias opciones de configuración, como separadores, selección de columnas y selección de codificación. Puede ejecutar cada asistente en servidores locales o servidores de MySQL conectados de forma remota. La acción de importación incluye la tabla, la columna y la asignación de tipos.

Para acceder a estos asistentes desde el menú contextual del examinador de objetos, haga clic con el botón derecho en una tabla y seleccione Asistente para exportación de datos de tabla o Asistente para importación de datos de tabla.

Asistente para exportación de datos de tabla

Para exportar una tabla a un archivo CSV:

  1. Haga clic en con el botón derecho en la tabla de la base de datos que se va a exportar.
  2. Seleccione Table Data Export Wizard (Asistente para exportación de datos de tabla). Seleccione las columnas que se exportarán, el desplazamiento de fila (si lo hubiera) y el número (si lo hubiera).
  3. En el panel Select data for export (Seleccionar datos para exportar), seleccione Siguiente. Seleccione la ruta de acceso del archivo y el tipo de archivo: CSV o JSON. Seleccione también el separador de línea, el método de inclusión de cadenas y el separador de campos.
  4. En la página Select output file location (Seleccionar ubicación del archivo de salida), seleccione Siguiente.
  5. En el panel Exportar datos, seleccione Siguiente.

Asistente para importación de datos de tabla

Para importar una tabla desde un archivo CSV:

  1. Haga clic con el botón derecho en la tabla de la base de datos que se va a importar.
  2. Busque y seleccione el archivo CSV que desea importar y, a continuación, seleccione Siguiente.
  3. Seleccione la tabla de destino (nueva o existente), active o desactive la casilla Truncate table before import (Truncar tabla antes de la importación) y, después, seleccione Siguiente.
  4. Seleccione la codificación y las columnas que desea importar y, después, seleccione Siguiente.
  5. En el panel Importar datos, seleccione Siguiente. El asistente importará los datos.

Ejecución de asistentes para la exportación e importación de datos de SQL desde el panel Navegador

Use un Asistente para exportar o importar datos de SQL generados a partir de MySQL Workbench o con el comando mysqldump. Puede acceder a los asistentes desde el panel del Navegador o puede seleccionar Servidor en el menú principal.

Exportar datos

Screenshot of using the Navigator pane to display the Data Export pane in MySQL Workbench.

Puede usar el panel Exportación de datos para exportar los datos de MySQL.

  1. En MySQL Workbench, en el panel Navegador, seleccione Exportación de datos.

  2. En el panel Exportación de datos, seleccione cada esquema que desee exportar.

    Para cada esquema, puede seleccionar tablas u objetos de esquema específicos para exportarlos. Entre las opciones de configuración se incluye la exportación a una carpeta de proyecto o un archivo independiente de SQL, el volcado de rutinas y eventos almacenados o la omisión de datos de tabla.

    También puede usar Export a Result Set (Exportar un conjunto de resultados) para exportar un resultado concreto establecido en el editor de SQL a otro formato como CSV, JSON, HTML y XML.

  3. Seleccione los objetos de base de datos que desea exportar y configure las opciones relacionadas.

  4. Seleccione Actualizar para cargar los objetos actuales.

  5. También puede seleccionar Opciones avanzadas en la esquina superior derecha para mejorar la operación de exportación. Por ejemplo, agregue bloqueos de tabla, use instrucciones replace en lugar de insert y entrecomille los identificadores con caracteres de acento grave.

  6. Seleccione Iniciar exportación para comenzar el proceso de exportación.

Importar datos

Screenshot of using the Navigator pane to display the Data Import pane in MySQL Workbench.

Puede usar el panel Importación de datos para importar o restaurar los datos exportados con la operación de exportación de datos o con el comando mysqldump.

  1. En MySQL Workbench, en el panel Navegador, seleccione Restauración/Importación de datos.
  2. Seleccione la carpeta de proyecto o el archivo SQL independiente, elija el esquema en el que se importarán los datos o seleccione el botón Nuevo para definir un nuevo esquema.
  3. Seleccione Iniciar importación para comenzar el proceso de importación.

Pasos siguientes