Search code examples
postgresqlpostgresql-13

Problem with server upgrade from 12 to 13 and 32-bit applications


I have a 64-bit Postgres server and 32-bit Windows applications. This worked perfectly until I upgraded Postgres from 12 to 13. The new server works well but applications raise an error authentication method 10 not supported on login.

I edited 13/data/pg_hba.conf, replaced the authentication method from scram-sha-256 to md5 in all entries, and restarted the server but the problem remained.

I think I need a new version of 32-bit libpq.dll but cannot find any newer than this from Postgres 10. Two questions. Will a newer version of libpq.dll solve the issue? And if so, where can I find it?


Solution

  • The problem is analogous to that described in PostgreSQL authentication method 10 not supported. An additional difficulty in my case was that I could not get the dlls from the server installation due to a 64-bit vs 32-bit incompatibility. I have just found a solution and post it that may be useful to others in the same situation.

    Download the binaries for Postgres 10.17 Win x86-32 from this page. You can find the file libpq.dll in lib folder but it is not enough as it needs two other (new) libraries: libcrypto-1_1.dll and libssl-1_1.dll. Copy the libraries and make available to your 32-bit applications. These three libraries are necessary for proper login. The lib folder contains more libraries that your application may need.

    Note that the authentication method scram-sha-256 is safer than md5 so it is no reason to replace it in the way described in the question.