Re: How to compare the schemas ?

Поиск
Список
Период
Сортировка
От Scott Marlowe
Тема Re: How to compare the schemas ?
Дата
Msg-id 1119973293.8208.107.camel@state.g2switchworks.com
обсуждение исходный текст
Ответ на Re: How to compare the schemas ?  (Ian FREISLICH <if@hetzner.co.za>)
Список pgsql-admin
On Tue, 2005-06-28 at 08:32, Ian FREISLICH wrote:
> Peter Eisentraut wrote:
> > Milorad Poluga wrote:
> > > One (certainly not the best options) is to do something like this:
> > >
> > > pg_dump ... DB1 =A0> PG_SCHEMA1
> > > pg_dump ... DB2 =A0> PG_SCHEMA2
> > > diff =A0PG_SCHEMA1 =A0PG_SCHEMA2 =A0> differences.txt
> >
> > What is wrong with that?
>
> All the extra TOC ID and comment stuff that pg_dump introduces.
> Also, I think that the dump is sorted by creation order or some
> other scheme, so even though the databases might be identical, the
> diff output would be significant.
>
> This is something that I have battled in the past.  The only solution
> was to always update the database from a set of scripts, one for
> each function and one for the tables.  These scripts kept in CVS
> auto update the comment on each object:
>
> COMMENT ON FUNCTION namedConfGen(TEXT,TEXT) IS '$Id: sproc.api.namedConfGen,v 1.
> 8 2004/05/07 08:02:55 ianf Exp $';
>
> Now I can cvs diff using the version numbers.  Not ideal, but at
> least I know exactly where I am.

I just pass a schema backup through grep or sed with this option:

grep -Pv "^--"

and get a pretty good idea of the differences.

Since our databases are created by scripts as well, they generally share
creation order and such, so any small difference from missing a script
on one or another environment shows up with this.

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org


В списке pgsql-admin по дате отправления:

Предыдущее
От: Scott Marlowe
Дата:
Сообщение: Re: Stripping raid vs. table spaces
Следующее
От: Chuming Chen
Дата:
Сообщение: Re: change existing table definition