Re: Actualizar version de aplicacion.

From: Oswaldo Hernández <listas(at)soft-com(dot)es>
To: David Prieto <davidp(at)sgth(dot)es>
Cc: 'Nicolás Domínguez Florit' <ndomin(at)rec(dot)unicen(dot)edu(dot)ar>, 'foro de postgresql' <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: Actualizar version de aplicacion.
Date: 2005-07-05 08:58:00
Message-ID: 42CA4B98.10602@soft-com.es
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola,

Todavía me encuentro en fase de migración de los sistemas actuales a
postgresql, y ese es un tema que también me preocupa puesto que cuando
este en producción los futuros cambios de versión necesitarán
modificaciones en la estructura de la base de datos.

En el sistema que utilizamos actualmente (msaccess) lo solucionamos
incorporando a los cambios de versión una base de datos 'master' y
creando una utilidad que compara este 'master' con la base de datos en
producción y modifica esta para ajustarla a la nueva estructura. De esta
forma en las actualizaciones lo único que hacemos es incluir el master
modificado para esa versión.

Antes de esto eran relativamente frecuentes los problemas causados por
olvido en la creación de un nuevo campo, indice, etc. necesarios para la
nueva versión.

Este sistema nos ha funcionado muy bien, pero claro, hasta ahora solo
usábamos tablas, indices y consultas. Con postgres se complica bastante
mas puesto que hay que considerar muchas mas clases de objetos y las
dependencias entre ellos: funciones, triggers, secuencias, lenguajes,
fk, rules, etc ...

Dado el buen resultado que nos ha dado el sistema, creo que la solución
ideal seria un script que realizara la comparación de dos schemas y
generara la secuencia de comandos necesarios para la actualización.

¿Alguien se anima a trabajar este verano? :)

Saludos,
--
*****************************************
Oswaldo Hernández
oswaldo(at)soft-com(dot)es
*****************************************

David Prieto escribió:
> Imagino que cuando pones este tema en la lista de postgresql, será
> porque las actualizaciones de tu aplicación requerirán en algunas
> ocasiones de cambios en la base de datos (nuevas tablas, nuevos campos
> en tablas, etc) ¿no?
>
> A mi también me interesa este tema. ¿cómo lo resolvéis normalmente?
>
> Yo tengo una tabla en la que guardo información sobre la aplicación. En
> esa tabla almaceno el nº de "version del esquema de la base de datos".
> La aplicación, al conectarse con la base de datos, comprueba si la
> versión del esquema que ella requiere es <= que la que aparece en la
> base de datos.
>
> Si la aplicación requiere una versión superior, ejecuta las sentencias
> necesarias para actualizar el esquema de la base de datos (crea tablas,
> crea campos, etc, etc) y actualiza la información de la versión del
> esquema.
>
> Estoy interesado en oir cómo lo resolvéis vosotros...
>
> Un saludo,
> David Prieto
>
> -----Mensaje original-----
> De: pgsql-es-ayuda-owner(at)postgresql(dot)org
> [mailto:pgsql-es-ayuda-owner(at)postgresql(dot)org] En nombre de Nicolás
> Domínguez Florit
> Enviado el: lunes, 04 de julio de 2005 17:26
> Para: foro de postgresql
> Asunto: [pgsql-es-ayuda] Actualizar version de aplicacion.
>
>
> Tengo una aplicacion desarrollada, la cual usa como repositorio de datos
> una
> base Postgres.
>
> Mi aplicacion va a necesitar de constantes mejoras, modificaciones,
> release,
> etc etc... Y aca engancho la pregunta:
>
> Que mecanismos existen o se puede implementar para poder migrar de una
> version a otra? (Siempre hablando de la aplicacion y no de versiones de
> postgres)
>
> Lo que se me ocurre es armar un script con stores procedures, o con algo
> que
> me recorra los datos de la base.
>
> Pero antes de hacer algo consulto porque me parece que este debe ser un
> tema
> bastante estudiado, por lo que escucho sugerencias de los
> experimentados.
>
> saludos y gracias de antemano.
>
> Nicolas.
>
>
> ---------------------------(fin del mensaje)---------------------------
> TIP 5: ¿Has leído nuestro extenso FAQ?
>
> http://www.postgresql.org/files/documentation/faqs/FAQ.html
>
>
> ---------------------------(fin del mensaje)---------------------------
> TIP 4: No hagas 'kill -9' a postmaster
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message diego ayala torres 2005-07-05 12:07:03 error del pg_dump
Previous Message David Prieto 2005-07-05 07:31:46 RE: Actualizar version de aplicacion.