domingo, 16 de marzo de 2014

Generar diagramas ER para postgresql con SchemaSpy

Antes de empezar primero debemos tener instalado graphviz y java (opendjk o el de oracle).


Para instalar graphviz en ubuntu o debian prueba con: sudo apt-get install graphviz

1- Luego de tener java y graphviz instalado entonces nos descargamhos este fichero ya preparado que tiene el driver de postgres 9.3 para java y el programa que genera los diagramas (SchemaSpy).

Si tienes una versión distinta de postgres entonces debes descargar el driver adecuado desde este sitio y substituir dicho fichero .jar por driver.jar



2- Lo descomprimimos en un directorio y ejecutamos en el:

java -jar schemaSpy -t pgsql -cp ./driver.jar -db NOMBREDB -host HOST -port PUERTO -u USUARIO -p CONTRASEÑA -o DESTINO -schemas "public,something,else"

Donde:
 ./driver.jar: Es el nombre del driver de JDBC para postgres

NOMBREDB: Es el nombre de la base de datos

HOST: Es el host de la base de datos

* PUERTO: Es el puerto de la BD

USUARIO: Es el usuario de la BD

* CONTRASEÑA: El pass de la BD

* DESTINO: Es donde queremos ubicar los ficheros que se van a generar (diagramas, etc)

Por ejemplo:


java -jar schemaSpy -t pgsql -cp ./driver.jar -db 'tienda_virtual' -host 'localhost' -port '5432' -u 'postgres' -p '1234' -o destino -schemas "public,something,else"


Debería arrojar algo como esto:






En la carpeta de destino estará la documentación generada.



Un gráfico generado: