Thread: How to store version number of database layout

How to store version number of database layout

From
Frank Lanitz
Date:
Hi folks,

It's more like a question of best practice:
How do you managing different version of database layout for e.g.
software releases?
We are planing to do an application based on postgres and want to store
some version number of database layout to ensure correct upgrade-scripts
can be applied in case of an upgrade. Is there any build in for?

Cheers,
Frank

Re: How to store version number of database layout

From
Raymond O'Donnell
Date:
On 12/02/2013 10:01, Frank Lanitz wrote:
> Hi folks,
>
> It's more like a question of best practice:
> How do you managing different version of database layout for e.g.
> software releases?
> We are planing to do an application based on postgres and want to store
> some version number of database layout to ensure correct upgrade-scripts
> can be applied in case of an upgrade. Is there any build in for?

Here's an easy-to-use system from one of the community:

  http://www.depesz.com/2010/08/22/versioning/

HTH,

Ray.

--
Raymond O'Donnell :: Galway :: Ireland
rod@iol.ie

Re: How to store version number of database layout

From
Thomas Kellerer
Date:
Frank Lanitz, 12.02.2013 11:01:
> It's more like a question of best practice:
> How do you managing different version of database layout for e.g.
> software releases?
> We are planing to do an application based on postgres and want to store
> some version number of database layout to ensure correct upgrade-scripts
> can be applied in case of an upgrade. Is there any build in for?
>

We are very satisfied using Liquibase: http://www.liquibase.org/

Re: How to store version number of database layout

From
John R Pierce
Date:
On 2/12/2013 2:01 AM, Frank Lanitz wrote:
> t's more like a question of best practice:
> How do you managing different version of database layout for e.g.
> software releases?
> We are planing to do an application based on postgres and want to store
> some version number of database layout to ensure correct upgrade-scripts
> can be applied in case of an upgrade. Is there any build in for?
my projects, we have a small table "settings",  with  key text, value
text.  one row is 'SCHEMA_VERSION','1.0.5'



--
john r pierce                                      37N 122W
somewhere on the middle of the left coast

Re: How to store version number of database layout

From
Chris Travers
Date:
On Tue, Feb 12, 2013 at 2:40 AM, John R Pierce <pierce@hogranch.com> wrote:

> On 2/12/2013 2:01 AM, Frank Lanitz wrote:
>
>> t's more like a question of best practice:
>> How do you managing different version of database layout for e.g.
>> software releases?
>> We are planing to do an application based on postgres and want to store
>> some version number of database layout to ensure correct upgrade-scripts
>> can be applied in case of an upgrade. Is there any build in for?
>>
> my projects, we have a small table "settings",  with  key text, value
> text.  one row is 'SCHEMA_VERSION','1.0.5'


this is the approach I go with too.    What we also do is have all the
modules  (.sql files) designed to be reloadable in a specific order and
guaranteeing a stored procedure layout consistent with the schema version.
 We also have extensive db-level test cases which can be run on production
servers (all transactions roll back) so that we can check for
inconsistencies.

This is not infallible but we have had relatively few problems with it.

Best Wishes,
Chris Travers

Re: How to store version number of database layout

From
"Karsten Hilbert"
Date:
> It's more like a question of best practice:
> How do you managing different version of database layout for e.g.
> software releases?
> We are planing to do an application based on postgres and want to store
> some version number of database layout to ensure correct upgrade-scripts
> can be applied in case of an upgrade. Is there any build in for?

We (www.gnumed.de) generate the md5 of a concatenation of the database
layout (tables/columns/PKs) which the client checks against and disconnects
if there's a mismatch.

Karsten

Re: How to store version number of database layout

From
Scott Marlowe
Date:
n Tue, Feb 12, 2013 at 3:13 AM, Raymond O'Donnell <rod@iol.ie> wrote:
> On 12/02/2013 10:01, Frank Lanitz wrote:
>> Hi folks,
>>
>> It's more like a question of best practice:
>> How do you managing different version of database layout for e.g.
>> software releases?
>> We are planing to do an application based on postgres and want to store
>> some version number of database layout to ensure correct upgrade-scripts
>> can be applied in case of an upgrade. Is there any build in for?
>
> Here's an easy-to-use system from one of the community:
>
>   http://www.depesz.com/2010/08/22/versioning/

I've used this system.  It's versatile and easy to use.  depesz++