24
María Martínez Ortuño ([email protected]) Ingeniería Inversa Ingeniería Inversa

MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

  • Upload
    mamaror

  • View
    2.478

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

María Martínez Ortuño([email protected])

Ingeniería InversaIngeniería Inversa

Page 2: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Introducción

La Ingeniería Inversa (Reverse engineering) trata de generar un Modelo de Base de Datos Lógico a partir de una Base de Datos Física.

Moskitt genera ingeniería inversa para:

PostgreSQL (poner versiones)

Oracle (poner versiones)

MySQL (poner versiones)

Page 3: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Dónde usarla?

Page 4: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Pasos

Crear la conexión de la Bases de Datos con el Explorador de Conexiones.

Lanzar el asistente para la Ejecución de Ingeniería Inversa.

Visualizar el resultado con el Editor de Bases de Datos de MOSKitt.

Page 5: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Pasos

Crear la conexión de la Bases de Datos con la vista del Explorador de Conexiones.

Lanzar el asistente para la Ejecución de Ingeniería Inversa.

Visualizar el resultado con el Editor de Bases de Datos de MOSKitt.

Page 6: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Obtener el driver JDBC correspondiente a la Base de Datos a la que queremos conectarnos.

Abrir el Explorador de Conexiones con Bases de Datos de Eclipse (Data Source Explorer)

Crear una definición (profile) para la fuente de datos con la que queremos conectarnos (MySQL, PostgreSQL, Oracle).

Conexión con la BD (1/11)

Page 7: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Conexión con la BD (2/11)

Abrir la Vista del Explorador de Conexiones con Bases de Datos de Eclipse:

Window/Show View/Other.../Data Management

Data Source Explorer

Page 8: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Conexión con la BD (3/11)

Obtener el driver JDBC correspondiente de:

Zope /G. Base de Datos / General / Software /Drivers JDBC

(http://zope.coput.gva.es/bd/bdgeneral/software/software.html#JDBC)

Para Oracle: ojdbc14.jar

Para PostgreSQL: postgresql-8.2-509.jdbc.jar

Para MySQL: mysql-conector-java-5.0-4.bin.jar

Page 9: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Conexión con la BD (4/11)

Crear una definición (profile) para la fuente de datos con la que queremos conectarnos (MySQL, PostgreSQL, Oracle):

1.- Botón derecho sobre “DataBase Connections – New ... ”

2.- Se abrirá la ventana “New Conexión Profile”

3.- Situarse sobre la BD con la que se desea conectar

Page 10: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Crear una definición (profile) para la fuente de datos con la que queremos conectarnos (MySQL, PostgreSQL, Oracle):

4.- Crear una nueva definición para el driver.

Conexión con la BD (5/11)

New Driver Definition

Page 11: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Conexión con la BD (6/11)

4.- Name/Type: Seleccionar el Driver que vamos a definir.

5.- Jar List: Cargar el Driver JDBC que vamos a utilizar

6.- Properties: Completar la descripción del Driver

(4) (5)

(6)

Page 12: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Connection URL: jdbc:subprotocol:[//|@]host:port[/|:]bd

jdbc: Indica que el protocolo que se está utilizando es JDBC.

subprotocol: Indica el tipo de la fuente de datos. Cuando el DriverManager busca un driver registrado para conectarse a la fuente de datos, pasa este URL, entonces el driver puede determinar si puede manejar esta fuente de datos.

host: Indica el nombre del servidor donde se encuentra el manejador de la base de datos. Cuando se omite, se toma como predeterminado a localhost.

port: Especifica el número del puerto donde el servidor está atendiendo. El puerto estándar predeterminado de PostgreSQL es el número 5432.

Conexión con la BD (7/11)

6.- Properties: Completar la descripción del Driver

Page 13: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

PostgreSQL (usado en las pruebas)Name Type: Postgresql JDBC Driver 8.xJar List: postgresql-8.1-413.jdbc3.jarProperties:

URL: jdbc:postgresql://rosa.coput.gva.es:5432/adocDatabase: adocUsername: *****

PostgreSQL (Para el curso)Name Type: Postgresql JDBC Driver 8.xJar List: postgresql-8.2-509.jdbc4.jarProperties:

URL: jdbc:postgresql://rosa:5566/geonosisDatabase: geonosisUsername: zforNNPassword: ******

Conexión con la BD (8/11)

Page 14: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Oracle (usado en las pruebas)Name Type: Oracle Thin Driver 10Jar List: ojdbc14.jarProperties:

Database: lunaURL: jdbc:oracle:thin:@rosa.coput.gva.es:1521:lunaUsername: *****

Oracle (Para el curso)Name Type: Oracle Thin Driver 10Jar List: ojdbc14.jarProperties:

Database: Completar cuando tengamos el E.FormaciónURL: Username: zforNNPassword: ******

Conexión con la BD (9/11)

Page 15: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Conexión con la BD (10/11)

MySQL (usado en las pruebas)Name Type: MySQL JDBC 5.0Jar List: mysql-connector-java-5.0.4-bin.jarProperties:

Database: gvtestURL: jdbc:mysql://gardel.coput.gva.es:3306/gvctestUsername: *****

MySQL (Para el curso)

No se van a hacer prácticas durante el curso con esta BD.

Page 16: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Conexión con la BD (11/11)

7.- Comprobar la Conexión: “Test Connection”

¡Ping Sucsessful!

8.- Una nueva conexión aparecerá en la vista “Data Source Explorer”

(7)

(8)

Page 17: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Pasos

Crear la conexión de la Bases de Datos con la vista del Explorador de Conexiones.

Lanzar el asistente para la Ejecución de Ingeniería Inversa.

Visualizar el resultado con el Editor de Bases de Datos de MOSKitt.

Page 18: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Lanzar el Asistente:

Sobre la Base de Datos (desconectada) que queremos transformar,

Botón derecho -> Reverse Engenieering

¡Ojo! La Base de Datos debe estar desconectada:

Sobre la base de datos,

Botón derecho: Connect/Disconnect/Ping

Obtenemos un fichero .sqlschema que contiene los objetos del modelo lógico de nuestra Base de Datos.

Lanzar Ingeniería Inversa (1/4)

Page 19: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Lanzar Ingeniería Inversa (2/4)

1.- Situarse sobre la BD de la que se desea hacer Ing.Inv.

2.- Seleccionar en el Menú Contextual: “Reverse Engenieering”

3.- Se abrirá el Asistente para “Ingeniería Inversa”

4.- Asignar el nombre que deberá tener nuestro modelo de BD (fichero .sqlschema).

5.- Pulsar “Next”(3)

Page 20: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Lanzar Ingeniería Inversa (3/4)

6.- Seleccionar el esquema de base de datos.

7.- Pulsar “Next”.

Esquema que queremos

Page 21: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Lanzar Ingeniería Inversa (4/4)

8.- Seleccionar los elementos del esquema que queremos obtener.

9.- Pulsar “Finish”.

Page 22: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Pasos

Crear la conexión de la Bases de Datos con la vista del Explorador de Conexiones.

Lanzar el asistente para la Ejecución de Ingeniería Inversa.

Visualizar el resultado con el Editor de Bases de Datos de MOSKitt.

Page 23: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

Visualizar el resultado

1.- Para visualizar el resultado crear el diagrama de BD con:

Initialize sqlmodel_diagram diagram file

2.- Indicar en el Asistente el nombre que se le quiere dar al diagrama

Nombre del fichero que va a contener el diagrama

(.sqlschema_diagram)

Page 24: MOSKitt: Ingeniería Inversa de Bases de Datos con MOSKitt

María Martinez Ortuño([email protected])

Ingeniería InversaIngeniería Inversa