Search Postgresql Archives

Re: client/server versions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/21/23 03:28, Dick Visser wrote:
Hi

I'm working with AWS RDS PG instances that have been created over time, and that by now are a mix of several major/minor versions ranging from 12 to 15. The initial configuration and management is done from an EC2 instance running Debian 11, which has Postrgres 13.13. I already found out that there are compatibility issues if I use the client programs from the Debian VM when they're older than the server version. To avoid this I tried to run the client programs from a dedicated PG container image with the same version as the server.
So instead of running:

PGSERVICE=foobar psql

I would now run:

podman run -e PGSERVICE=foobar -v $(pwd)/.pg_service.conf:/root/.pg_service.conf --rm -it docker.io/library/postgres:15.3 <http://docker.io/library/postgres:15.3> psql

This is reasonably straightforward and seems to just work.
Now that I have a way to pick whatever client version I need, I wonder what the best strategy is wrt versions... Keeping them exactly the same, or is it better to always use the latest client version?

Not sure how you installed the Postgres versions and what the OS'es are for all the instances? If you used the Debian/Ubuntu repos or Postgres community repo Debian/Ubuntu packages then you got the program pg_wrapper installed.

Per man pg_wrapper or postgresql-common(they point to the same thing) file:

"""
This program is run only as a link to names which correspond to PostgreSQL programs in /usr/lib/postgresql/version/bin. It determines the configured cluster and database for the user and calls the appropriate version of the desired program to connect to that cluster and database, supplying any specified options to thatcommand.

...


For psql, pg_archivecleanup, and pg_isready, pg_wrapper will always use the binary from the newest PostgreSQL version installed, as these are downwards compatible.
"""

I know that the latter is a bit easier as one can just pick an untagged container image, because that corresponds to the latest version. Also I'm thinking that using the latest version of pg_dump/pg_restore allows you to have more options.

thx

Dick Visser


--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx






[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux