sql >> Base de Datos >  >> RDS >> PostgreSQL

psycopg2.OperationalError:FATAL:protocolo frontend no compatible 1234.5679:el servidor admite 2.0 a 3.0

1234.5679 es el código especial enviado por el cliente para solicitar conexiones de base de datos cifradas con SSL, y PostgreSQL lo admite desde la confirmación e0e7daef6da en 1999. Pero su PostgreSQL no puede ser tan antiguo, porque la compatibilidad con la versión 3.0 del protocolo no se agregó antes de 2003.

En realidad, de estudiar src/backend/postmaster/postmaster.c y leyendo la lista de correo, este es un error en el servidor PostgreSQL:

El cliente debe estar configurado para probar la autenticación GSS, y cuando el servidor la rechaza, quiere negociar una conexión SSL, pero el servidor no espera eso en este punto; de ahí el error.

Vea la discusión aquí. El error se solucionó con la versión 12.3.

Como solución temporal, deshabilite la autenticación GSS o la negociación SSL en el cliente.

En psycopg2, la desactivación de SSL se realiza utilizando sslmode="disable" en la cadena de conexión, y la desactivación de GSS se realiza con gssencmode="disable" . Consulte la documentación para obtener más detalles.