Re: Schema comparison tool - Mailing list pgsql-general

From Ian Harding
Subject Re: Schema comparison tool
Date
Msg-id s21358db.016@MAIL.TPCHD.ORG
Whole thread Raw
In response to Schema comparison tool  (Jeff Amiel <jamiel@istreamimaging.com>)
Responses Re: Schema comparison tool  (Rich Shepard <rshepard@appl-ecosys.com>)
List pgsql-general
I keep scripts for drop/creation or replacement of each type of object,
and a shell script to run them in order.  I only make changes in the
scripts.  They can be run one at a time if only one type of object has
changed or been created.  I keep backups of data only, and have an
intermediate step in the shell script that loads data after tables are
created and before the other objects are created.

The scripts are in a revision control system, so if I have to restore
old data, I use the old schema.

Ian Harding
Programmer/Analyst II
Tacoma-Pierce County Health Department
iharding@tpchd.org
Phone: (253) 798-3549
Pager: (253) 754-0002

>>> Jeff Amiel <jamiel@istreamimaging.com> 02/15/05 7:01 AM >>>
I'm looking specifically for a tool to help compare 2 database schemas
(nominally, production and development) and generate the appropriate SQL

(that can be later executed) to bring the to schema's into sync.

Option1 :
pg_dump -s  firstdatabasename > first
pg_dump -s seconddatabasename > second
diff first second
(obviously wont generate SQL to remedy the differences)

Option2:
pgdiff (http://gborg.postgresql.org/project/pgdiff/projdisplay.php)
(old abandoned perl project that doesn't work...)

Option 3:
pgdiff (http://gborg.postgresql.org/project/pgdiff/projdisplay.php)
(old abandoned TCL project which requires AOLServer to run???)

Option 4:
EMS PostgreSQL DB Comparer
(http://www.sqlmanager.net/products/postgresql/dbcomparer)
Slick tool...fairly cheap ($69)...doesnt let you exclude certain
specific tables/sequences/databases, but otherwise, pretty functional.

What does the rest of the postgreSQL admin community do in order to
"bring-live" database schema changes from their development environment
to production?  Are there other options/techniques out there?

Any help would be appreciated.

Jeff





---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
    (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)


pgsql-general by date:

Previous
From: Grant McLean
Date:
Subject: Re: Schema comparison tool
Next
From: Martijn van Oosterhout
Date:
Subject: Re: hung postmaster?