Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm considering upgrade from Postgres 8.3.3 to 8.4.2 on my machine (it has Windows Vista).

Windows Installer (one click installer) for Postgres 8.4.2 that can be downloaded from offers only fresh install (it does not recognizes my current installation of v8.3.3).

Is it possible to upgrade with all existing databases converted and visible (automatically migrated?) in new version just after upgrade? Or I have to do something more - backup/restore all my databases manually?

share|improve this question

migrated from Jan 15 '10 at 1:44

This question came from our site for professional and enthusiast programmers.

Simple answer: you need to pg_dump, install fresh 8.4, and then load.

No so simple answer - you can use pg_migrator to do inplace binary files upgrade, but i haven't tested it yet.

share|improve this answer

I've tried pg_migrator and:

  1. Latest version (8.4.11) is not appropriate for my migration tast - it allows migration to 8.5 but I need migration to 8.4.2.

    Performing Consistency Checks Checking old data directory (c:\program files\postgresql\8.3\data)ok Checking new data directory (c:\program files\postgresql\8.4\data)ok

    This binary was built using 8.5 PostgreSQL sources; it must be built using 8.4 PostgreSQL sources to match the new cluster.

but... there is no info on pg_migrator home page what version of migrator is for what target version of Postgres. I've downloaded and installed v8.4.4 and it seems proper version, but here is what i says:

mapped win32 error code 2 to 2 Old and new pg_controldata date/time storage types do not match.

You will need to rebuild the new server with configure --disable-integer-datetimes or get server binaries built with those options.

So, it is not so automatic for me. I think old classic pg_dump / restore will do better.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.