i selected postgresql as my main sql dialect and db for studying.

I checked the official website - it's confusing why they have so many versions?

Can someone explain?

  • Why do you think it's a problem? It is normal to run older versions of X -- "if it ain't broke don't fix it". I know one successful web service that is still running Oracle 8i... not that I personally would do that.
    – mustaccio
    Commented Feb 19, 2021 at 21:40

3 Answers 3


Businesses generally aren’t in a position to upgraded their software at the drop of a hat. It can takes months or years of preparation to be ready to upgrade. For this reason Postgres — like other software used by business is supported for many years. Postgres still releases a new version every year, but they also release patches to old versions for 5 years. After that the support stops, but the old version still works of course — and after 5 years of patches many bugs have been fixed, so it could be argued it’s very stable.

That being said, often new features will help a business in some way and they will upgrade eventually. Some companies get on to the latest version within weeks or months. At my company we tend to upgrade every few years. We don’t have the resources or want to spend effort upgrading every year.

  • Mostly agree, but running an unsupported database version is not a good idea if your data are important for you. There is nothing stable about having unfixed data corruption bugs and security problems in your database. And there are bugs that don't strike immediately. Commented Feb 20, 2021 at 21:25

They have a 5 Year end of time policy see homepage

That is why 9.5 has got the latest official update in February

You have to check the manual what mandatory sql standard and optional standards which version supports or in case of Windows for example which Version of Windows it is supported.



Some major upgrades change the on disk database storage format, so they require to dump the database and reload it using pg_dump and pg_restore, which requires server downtime.

If you have a huge database, this could take a while, during which the server is not available.

You also have to thoroughly test everything to make sure the new version doesn't cause any incompatibility with your code, or subtle performance issue like "this query that worked well now takes a week due to changes in the optimizer"...

Everyone hates doing this so it shouldn't happen too often. This kind of stuff has to be carefully planned, users warned so they don't go hysterical, etc. So the software provider is pretty much expected to provide long time support.

In fact, the duration of long time support for old versions you'd expect from a serious software vendor is pretty much proportional to:

  • How much downtime an upgrade causes

  • How much test, validation, and modification you have to do to your own code to make sure it works with the new version

  • How much pain occurs if it goes horribly wrong

Databases are pretty much worst case for all the above.

  • There hasn't been an upgrade that didn't work with pg_upgrade since it was introduced. Commented Feb 20, 2021 at 21:26

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