Artículo
· 27 oct, 2022 Lectura de 5 min

Herramienta de migración de datos - Parte II: de MySQL a IRIS

Este artículo es una continuación de este otro sobre cómo migrar de bases de datos populares (como PostgreSQL y MySQL) a IRIS.

Utilizaremos los mismos procedimientos utilizados para migrar desde PostgreSQL. Sin embargo, verás que es aún más fácil ya que los tipos de datos en MySQL son muy similares a los de IRIS. Por eso no necesitaremos crear reglas de transformación en las columnas.

Obtención de los datos de muestra para realizar el proceso de migración

En Github es posible descargar un proyecto de Docker Compose para crear y ejecutar 2 bases de datos:

  • Source Database (Base de datos de origen): Instancia Docker de la base de datos ejemplo MySQL.
  • Target Database (Base de datos objetivo): Instancia Docker de InterSystems IRIS con un esquema preparado para recibir la base de datos de origen.

Para obtener la muestra y ejecutarla, sigue estos pasos:

  1. Ve al repositorio git https://github.com/yurimarx/migration-mysql-iris.
  2. Clona el proyecto: git clone https://github.com/yurimarx/migration-mysql-iris.git.  
  3. Ve a la carpeta del proyecto migration-mysql-iris.
  4. Realiza una compilación: docker-compose build.
  5. Ejecuta los contenedores: docker-compose up -d.
  6. Comprueba en el escritorio de tu docker con las instancias si todo está bien:

Sobre los datos que se van a migrar

Los datos que se van a migrar son el mismo modelo de datos utilizado en la Parte I, y se representan aquí:

Por lo tanto, el proceso será migrar de MySQL a IRIS:

  • 8 tablas.
  • 5000 filas de "sale".
  • 2,500 filas de "users".
  • 200 filas de "product".
  • 50 filas de "store".
  • 100 filas de "country".
  • 30 filas de "city".
  • 5 filas de "status_name".

El destino de la migración será el esquema dc_test que se encuentra dentro del namespace USER en la base de datos de InterSystems IRIS.

Herramienta open-source para migrar de MySQL a IRIS: DBeaver

En la Parte I, utilizamos la Community Edition de DBeaver para migrar. Lo usaremos otra vez.
DBeaver es una herramienta de base de datos para conectar, crear, remover, seleccionar, actualizar y eliminar objetos de datos en las principales bases de datos del mercado. Descárgala en: https://openexchange.intersystems.com/package/DBeaver. Ahora, sigue las instrucciones de instalación para tener este magnífico producto en tu portátil o equipo de sobremesa.
DBeaver puede utilizarse para migrar datos entre conexiones de bases de datos, incluso si son de diferentes fabricantes y versiones.

Cómo conectar las bases de datos de origen y destino mediante DBeaver

Ahora vamos a establecer las conexiones de bases de datos que se van a migrar.
Para establecer la conexión de MySQL a DBeaver:
1.    En DBeaver, ve a File > New.
2.    Selecciona Database Connection y haz clic en Next:

3.    Haz clic en la pestaña SQL > MySQL y luego en Next:

4.    Completa los campos de conexión a MySQL en la pestaña Main, como se muestra en esta imagen:

●    Host: localhost
●    Port: 3306
●    Database: db
●    Username: user
●    Password: password

5.    Ve a la pestaña "Driver properties" y establece la propiedad "allowPublicKeyRetrieval" con el valor TRUE:

6.    En la misma pestaña "Driver properties" establece "useSSL" con el valor FALSE:

7.    Si DBeaver solicita descargar el driver de MySQL, haz clic en Sí u Ok.
8.    Haz clic en Finish.

Para configurar la conexión de InterSystems IRIS a DBeaver:
En la parte I, configuraste la conexión IRIS, pero si no la tenías guardada, haz lo siguiente:
1.    En DBeaver, ve a File > New.
2.    Selecciona Database Connection y haz clic en Next:

3.    Haz clic en la pestaña SQL > InterSystems IRIS y luego en Next:

4.    Si DBeaver solicita descargar el driver de InterSystems IRIS, haz clic en Sí u Ok.
5.    Completa los campos de conexión de InterSystems IRIS como se muestra en esta imagen:

●    Host: localhost
●    Database/Schema: user
●    Username: _SYSTEM
●    Password: SYS
●    Haz clic en Text Connection y en Finish.

Las conexiones (db y user) están disponibles en Database Navigator:

Realizar la migración

El proceso de migración es muy similar al descrito en la Parte I. Solo hay que seguir los siguientes pasos:
1.    Expande la conexión db > Bases de datos > db > Tablas y selecciona todas las tablas. Haz clic derecho con el ratón sobre las tablas seleccionadas y elige Export Data, así:

2.    Selecciona Database, como se ve en esta imagen y haz clic en Next:

3.    Haz clic en el botón Choose:

4.    Selecciona dc_test y haz clic en Ok (Si necesitas crear transformaciones avanzadas entre las columnas de destino y de origen, haz clic en el botón Columnas).  

5.    Ahora, haz clic en Next.

6.    Establezce Fetch size en 1,000,000 y haz clic en Next.

7.    Acepta los valores predeterminados en Data load settings y haz clic en Next.

8.    En Confirm haz clic en Proceed.

9.    Ahora, si abres el Navegador de Base de datos, podrás ver todas las Tablas MySQL dentro del esquema InterSystems IRIS dc_test.

Igual que la migración a PostgreSQL, el proceso de migración a MySQL fue muy sencillo para las tablas. Sin embargo, para las vistas, funciones, activadores y procedimientos almacenados, será necesario reescribir el código fuente SQL utilizando ObjectScript o SQL.

Comentarios (0)2
Inicie sesión o regístrese para continuar