Re: upgrade from 13 to 16 - Mailing list pgsql-admin

From Holger Jakobs
Subject Re: upgrade from 13 to 16
Date
Msg-id 6e1df2c9-c9be-4d03-a349-ac4edadc85c3@jakobs.com
Whole thread Raw
In response to Re: upgrade from 13 to 16  (Ron Johnson <ronljohnsonjr@gmail.com>)
List pgsql-admin
Am 02.03.26 um 15:31 schrieb Ron Johnson:
On Mon, Mar 2, 2026 at 9:09 AM listy <listy@localities.work> wrote:
Cannot say about Debian but RHEL family (perhaps exceptions exist) do not, certainly not on Centos, Ubuntu which I use, yes.
But also rhel/centos do not do major PGsql rel. upgrade within the same/one OS release, I do not think so.
What happened to me - what I did rather - was upgrade from c9 to c10. (not officially supported.)

This is why I strongly urge you to use the PGDG repositories, not the packages which RHEL builds.

--
Death to <Redacted>, and butter sauce.
Don't boil me, I'm still alive.
<Redacted> lobster!

Yes, RHEL doesn't take into account that PostgreSQL will ever be upgraded to another major version. They support the version which was current when they had their feature freeze for the lifetime of the system.

Therefore Ron is perfectly correct in writing that everybody should use the PGDG from the beginning.

You might have success installing the new version from PGDG repos and then run pg_upgrade (with all 4 mentioned options) from the new version. The preconditions for pg_upgrade are:

  • you have the old and the new software version installed (pg-13 and pg-18) in different directories
  • you have the old cluster unchanged and an empty new cluster in different directories

Maybe it helps to move the data directory of the old cluster before installing the new software package. Make sure you also change the path in the systemd service unit of the old version.

If the database isn't large, dump & restore will also work fine.

Regards,

Holger

--

Holger Jakobs, Bergisch Gladbach, Germany

pgsql-admin by date:

Previous
From: Laurenz Albe
Date:
Subject: Re: problem during postgres restore: max_connections = 100 is a lower setting than on the primary server, where its value was 350