Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

469
Vistas
Conexión al servidor Azure PostgreSQL desde el cliente python psycopg2

Tengo problemas para conectarme a la base de datos de Azure postgres desde python. Estoy siguiendo la guía aquí: https://docs.microsoft.com/cs-cz/azure/postgresql/connect-python Tengo básicamente el mismo código para configurar la conexión. Pero psycopg2 y SQLalchemy me arrojan el mismo error:

 OperationalError: server closed the connection unexpectedly This probably means the server terminated abnormally before or while processing the request.

Puedo conectarme a la instancia mediante otras herramientas de cliente como dbeaver, pero desde python no funciona.

Cuando investigo en los registros de Postgres, puedo ver que el servidor realmente autorizó la conexión, pero la siguiente línea dice

 could not receive data from client: An existing connection was forcibly closed by the remote host.

Python es 3.7 La versión de psycopg es 2.8.5 La región de Azure Postgres está en Europa Occidental

¿Alguien tiene alguna sugerencia sobre qué debo intentar para que funcione?

¡Gracias!

EDITAR: El problema se resolvió solo. Probé la misma configuración unos días después y comenzó a funcionar. Podría haber habido algún problema con Azure West Europe.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Yo también tuve este problema. Creo que leí en alguna parte (no recuerdo dónde) que Azure tiene un problema con el @ que debe para el nombre de usuario (usuario@nombreDeServidor).

Creé variables y una cadena f y luego funcionó bien.

 import sqlalchemy username = 'user@server_name' password = 'PassWord!' host = 'server_name.postgres.database.azure.com' database = 'your_database' conn_str = f'postgresql+psycopg2://{username}:{password}@{host}/{database}'

Después:

 engine = sqlalchemy.create_engine(conn_str, pool_pre_ping=True) conn = engine.connect()

Pruébelo con una declaración SQL simple.

 sql = 'SELECT * FROM public.some_table;' results = conn.engine.execute(sql)

Esta fue una conexión en el sur del Reino Unido. Antes sí se quejaba de que el formato del nombre de usuario tenía que usar @, aunque el nombre de usuario era correcto, como se probó desde la línea de comandos con PSQL y otro cliente SQL.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda