> Is there any way to adjust dumps from postgresql 7.3 for use by > version 7.2 and vice versa ? > > Or is there a way to transport a full database via csv or in any other > kind to 7.2 and vice versa ? > > We are running a couple of servers/mirrors at various locations in the > world, handling data based on postgresql, and now we have trouble to > transport data from and to sites with different versions. > > (E.g. http://genealogy.math.ndsu.nodak.edu/ > http://genealogy.mathematik.uni-bielefeld.de/ ) > > Some have upgraded and others cannot immediately follow, since an > upgrade from 7.2 to 7.3 seems to require an upgrade of php4 and maybe > even of apache, which takes time etc. > > So it would be helpful to have an easy tool to convert between data > for both versions. > > Any help or recommendation is very much appreciated! I live with PostgreSQL from 6.5 and for independance every my application write in such a manner: database description is written using m4 macros. short example (<qb><qe> - quote open and quote close - they are unprintable): CREATE_SECTION<qb><qe>dnl
CREATE_TABLE(istat_d, rs, normal) ( date date NOT NULL , wclass int NOT NULL , count int8 NOT NULL ) INHERITS(ifaces) ; TUNE_SECTION<qb><qe>dnl CREATE UNIQUE INDEX istat_d_idx ON istat_d(router, iface, date, wclass); ALTER TABLE istat_d ADD FOREIGN KEY(router) REFERENCES router; ALTER TABLE istat_d ADD FOREIGN KEY(router, iface) REFERENCES iface; COMMENT ON TABLE istat_d IS '????? ? ???????'; COMMENT ON COLUMN istat_d.date IS '????? ??????'; END_SECTION<qb><qe>dnl m4 creates different files: for shema creation: CREATE TABLE istat_d ( date date NOT NULL , wclass int NOT NULL , count int8 NOT NULL ) INHERITS(ifaces) ; for content restore (:1 - directory): \set istat_d '\\copy istat_d FROM \'' :1 '/istat_d\'' :istat_d for last pass (I call it 'tune'): GRANT SELECT ON istat_d TO ispdb; GRANT INSERT ON istat_d TO ispdb; GRANT SELECT ON istat_d TO GROUP ispdbuser; CREATE UNIQUE INDEX istat_d_idx ON istat_d(router, iface, date, wclass); ALTER TABLE istat_d ADD FOREIGN KEY(router) REFERENCES router; ALTER TABLE istat_d ADD FOREIGN KEY(router, iface) REFERENCES iface; COMMENT ON TABLE istat_d IS '????? ? ???????'; COMMENT ON COLUMN istat_d.date IS '????? ??????'; for content dump: \set istat_d '\\copy istat_d TO \'' :1 '/istat_d\'' :istat_d for shema deletion: DROP TABLE istat_d; for empty database initialisation - void in this example. '?' in example are symbols of my language. So every database replication is: - content dump (not PostgreSQL dump) - shema creation - content restore - tune pass This unlock me from PostgreSQL version and ease me to upgrade application version (with possible 'up' pass in addition) ---------------------------(end of broadcast)--------------------------- TIP 2: you can get off all lists at once with the unregister command (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])