Migrar MySQL 5.1 a Oracle 10g con SQLDeveloper (Mac o Windows)

Migrar una base de datos MySQL 5.1 a una base de datos Oracle 10g.


Lo indispensable para poder hacerlo es :


1.- Primer paso es descargar la herramienta de Oracle que nos facilitara este proceso
Oracle SQLDeveloper.

2.- Descargar el JDBC Driver para MySQL
JDBC Driver MySQL

Hay documentación referente a la migración la cual pueden consultar en la siguiente liga
MySQL to Oracle
.



Crear Conexiones
















Conexion base de datos origen (MySQL)

Tenemos que agregar el JDBC de MySQL que descargamos asi que nos vamos al menu Tools - Preferences - Database - Third Party JDBC Drivers y agregamos el driver que descargamos mysql-connector-java-5.1.7-bin.jar.

Configuramos JDBC driver









































Creamos la conexion a MySQL





















































Conexion base de datos destino (ORACLE)

Configuramos nuestra conexion destino destino , en mi caso ya tengo un esquema disponible (XXTVSPOT) en una base de datos de desarrollo Oracle 10g (TVDESA), si no lo tienes hay que crearlo primero, el usuario que se vaya a crear en este esquema debe tener privilegios de RESOURCE, CREATE SESSION Y CREATE VIEW.


























Crear Repositorio

Es necesario para poder realizar la migracion,
Migration - Repositorio Management - Create Repository, esta operación creará objetos en la base de datos destino.





































Capturar Esquema

Seleccionamos el esquema que deseamos migrar ,presionamos boton derecho y generamos el esquema.


















Convertir a modelo Oracle

Seleccionamos el modelo capturado , boton derecho y convertimos a modelo Oracle , aceptamos los valores por defecto , aunque si queremos podemos realizar algunos cambios si lo deseamos, es recomendable se haga todo en automático.
















































Generando SQL de Oracle

Una vez que tenemos el Modelo Oracle, procedemos a generar el script SQL


















Aqui hay varios detalles para comentar:

La aplicación muestra un mensaje de error al momento de crear un
Foreing Key Constraint "Exception on Generation of Foreing Key Constraint" , yo omiti este mensaje dado que el error que lo causa es por falta de informacion en una tabla, y no afecta el proceso de migracion.

Dado que yo ya tengo un usuario que accesa a mi esquema de base de datos Oracle no necesito generar uno nuevo por lo que comenté estas lineas ya que no son necesarias .

/*
SET SCAN OFF;
PROMPT Creating User tvspot ...
CREATE USER tvspot IDENTIFIED BY tvspot DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP;
GRANT CREATE SESSION, RESOURCE, CREATE VIEW TO tvspot;
connect tvspot/tvspot;
*/

/*connect tvspot/tvspot; */





Una vez comentadas las lineas procedemos a ejecutar el script en la base de datos destino (ORACLE)













Movimiento de Datos

Una vez que se haya ejecutado el script de oracle en la base de datos Oracle, procedemos a importar la información seleccionamos Migration - Migration Data.

















Y terminamos la migracion de la base MySQL a Oracle.
Yo seguí los pasos que se indican en la docuementacion de Oracle , pero la herramienta trae una opcion que se llama Quick Migrate , la cual al parecer hace lo mismo solo que con un asistente, si alguien lo ha checado pues que envie sus comentarios y si tuvo problemas pues tambien que lo haga saber.













2 comentarios:

Adrian Paredes dijo...

Muy buen tutorial!!!
Me sirvió muchísimo!
Gracias!

Atmorphius dijo...

De nada Adrían gracias por pasar a checar algunas de mis publicaciones !!
:D

saludos !!

Publicar un comentario