29 September, 2008

Oracle Express v10 en ubuntu

Logo OracleHasta la fecha nunca había trabajado con oracle. Solo había tocado mysql, sqlserver (lo justo y necesario para sacar adelante los respectivos proyectos) y apache derby en mi querido fmap. Pero las prácticas de SGBD las haremos en este entorno, por lo que toca instalarlo.

Hace ya unos años que la uoc viene promoviendo el software libre con cd’s de ubuntu y diverso software abierto (cuando es posible) para poder realizar muchas de las prácticas cada semestre. Pero esta asignatura parece ser una excepción. En “sistemas de gestión de bases de datos” envían un cd con Oracle Express v10 y SQL Developer v1, solo para windows XP, 2000 y 2003. Como muchos sabréis Oracle Express es la versión gratuita de oracle y también tenemos versiones para ubuntu y otras distribuciones gnu-linux, ¿que les costaba meter 200MB mas con el .deb para las distribuciones debianeras?.

Por supuesto yo lo he instalado en mi ubuntu. He optado por añadir el repositorio de oracle http://oss.oracle.com/debian a mi sources.list y ejecutar un simple apt-get install oracle-xe-universal, he dejado los pasos de instalación en el wiki, cuya página iré ampliando a medida que valla conociendo este SGBD.

Por supuesto, esta versión gratuita tiene sus limitaciones, en la licencia nos indican que solo para sistemas con 1 procesador, no mas de 1GB de ram y BD limitadas a un tamaño de 4GB, quien quiera mas, que pague.

6 May, 2008

Mysql5 y mysql4 conviviendo en ubuntu

Logo MysqlPues si con este inicio de mayo y un año mas encima :-) cambiamos de proyecto y necesariamente hemos de utilizar mysql4.

En mi ubuntu gutsy (todavía no me he atrevido a actualizar) tengo instalada mediante apt la versión 5, así que no me quedaba otra que buscar la forma de tener las 2 funcionando en mi portatil ya que la opción de servidor de desarrollo en casa a día de hoy es inviable. Yo he compilado los fuentes de mysql4 para conseguirlo aunque tenemos otras opciones. En este provechoso articulo tenemos información sobre esto.

Lo primero es descargar los fuentes.
Descomprimimos y preparamos la compilación para indicar el puerto, socket y directorio de instalación, todos diferentes a la versión 5 actual claro:

  1. ./configure --prefix=/home/javi/mysql4.1 --sysconfdir=/home/javi/mysql4.1 --with-tcp-port=3309 --with-mysqld-user=javi --with-unix-socket-path=/home/javi/mysql4.1/mysql4.1.sock

Compilamos "make" e instalamos "make install".

Copiamos el fichero de configuración a la nueva instalación:

  1. cp support-files/my-large.cnf /home/javi/servers/mysql4/my.cnf

Creamos las BD (test, mysql, information_schema) necesarias para mysql ejecutando ./bin/mysql_install_db.

Iniciamos ./bin/mysqld_safe --defaults-extra-file=my.cnf indicando el fichero de configuración a utilizar.

Y listo, probamos si ha iniciado correctamente realizando una conexión: ./bin/mysql -h 127.0.0.1 -P 3308 -u root, especial atención a la ip y no "localhost" para que la conexión se realice mediante TCP/IP.

Y a currar en 5 y 4.

4 February, 2008

Modelado de BD en ubuntu

DbDesignerDe toda la documentación que podemos generar durante el desarrollo de un proyecto de gestión, uno de los documentos que mas me ayuda son los diagramas entidad-relación. Gracias a ellos puedo observar de un golpe de vista todo el modelo de datos con el que trabajo y con ello gran parte del modelo de negocio a tratar.

De siempre hemos tenido programas para generar estos diagramas, Oracle Designer, IBM Rational Rose, ERwin, Microsoft Visio, DataArquitect, y seguro que muchos otros que no conozco. Pero no fué hasta la aparición de DbDesigner cuando tuvimos un programa de este tipo para mysql, liberado bajo GPL y disponible también para escritorios linux.

Hace ya unos años que mysql se hizo con fabforce, empresa que desarrolló DbDesigner, gracias a esta compra tenemos productos como Mysql Administrator, Mysql Query Browser o Mysql Migration Toolkit, pero nos faltaba la continuación de DbDesigner que parecía haber quedado estancada. En Diciembre 2007 por fín mysql liberó MySQL Workbench 5.0.11 (beta) el sucesor de nuestro querido DbDesigner, no sin llevarnos una buena sorpresa, solo se ha liberado para windows, todas las demás plataformas deberán esperar un poco, no deja de ser curioso viniendo de mysql, en fin...

Todo este rollo viene al caso porque la semana pasada he comenzado a hacerme con un nuevo proyecto dentro de mi nuevo trabajo, y claro, como suele ser habitual no tenemos ni rastro de documentación. Por lo que me decidido a comenzar documentando la BD que se utiliza y así poder entender algo de lo que se cuece ahí. Y ya que como os contaba todavía no tenemos Mysql Workbench para nuestros linux, he vuelto a instalar en mi portatil-ubuntu la última versión de DbDesigner, os cuento como lo hice:

Antes de nada necesitaremos tener instalado el paquete xkeyboard-config, si todavía no lo tenemos en ubuntu nos bastará con un simple apt-get install xkeyboard-config.

DbDesigner esta desarrollado en kylix por lo que debemos bajarnos sus librerias si es que no las tenemos instaladas ya. Para ello visitamos http://kylixlibs.sourceforge.net/down.html y nos las bajamos en el formato que mas nos convenga, yo me las bajé en .deb y las instalé con un simple dpkg -i libreria.deb por cada una, en total son estos 5 paquetes:

kylixlibs3-borqt_3.0-1_i386.deb

kylixlibs3-runtime_3.0-1_i386.deb

kylixlibs3-borstlcrtl_3.0-1_i386.deb

kylixlibs3-unwind_3.0-1_i386.deb

kylixlibs3-qt_3.0-1_i386.deb

Por lo general se instalarán en el directorio /usr/lib/kylix3 y es posible que debamos crear 2 enlaces simbolicos para que DbDesigner sepa donde encontrarlas.

  1. ln -s /usr/lib/kylix3/libborqt-6.9.0-qt2.3.so /usr/lib/kylix3/libborqt-6.9-qt2.3.so

Posiblemente necesitemos crear también un enlace a /usr/lib/:

  1. ln -s /usr/lib/kylix3/libborqt-6.9.0-qt2.3.so /usr/lib/libborqt-6.9-qt2.3.so

para que este último enlace tenga efecto editamos el fichero /etc/ld.so.conf o /etc/ld.conf y si no está añadimos la linea /usr/lib, guardamos y ejecutamos el comando ldconfig para actualizar los links de nuestro directorio /usr/lib.
Ahora ya solo nos queda descargarnos el DbDesigner y ejecutarlo.

Powered by WordPress
Bajo licencia Creative Commons
Contacto sanroman.javier at gmail.com