The man page for initdb says that the -t option will overwrite the template1
database with the up-to-date structure and suggests that this is the way to
upgrade to a newer release:
--template
-t Replace the template1 database in an existing database system, and don't touch
anything else. This is useful when you need to upgrade your tem plate1 database using initdb
froma newer release of PostgreSQL, or when your template1 database has become corrupted by
somesystem problem. Normally the contents of template1 remain constant through out the life
of the database system. You can't destroy anything by running initdb with the --tem plate
option.
How does this relate to pg_upgrade? Is it necessary to do a pg_dump? If
not, is there a danger of new oids in template1 overwriting old oids in
user data? (I am not clear whether oids are unique to a database or
to the whole PostgreSQL installation.)
--
Oliver Elphick Oliver.Elphick@lfix.co.uk
Isle of Wight http://www.lfix.co.uk/oliver PGP key from public servers; key
ID32B8FAA1 ======================================== "If the Son therefore shall make you free, ye
shallbe free indeed." John 8:36