Referencia técnica independienteSitio oficial
  • Software y sistemas
  • Base de datos

08004

PostgreSQL 08004 en base de datos: el servidor rechazó establecer la conexión

Verificada con fuentes3 fuentesRevisada 3 oct 2026
¿Viene un técnico? Mira los 2 pasos que debe enseñarte
Trace

Evidencia vinculada a esta decisión

Ver fuente: PostgreSQL 18 Appendix A: Error Codes

Nivel de riesgo

Precaución

Actúa con cuidado; puede requerir técnico si persiste.

Urgencia

Media — atiéndelo hoy

Respuesta rápida

El servidor recibió la petición de conexión y la rechazó. Comprueba con pg_isready si está arrancando, parándose o recuperándose, y anota el mensaje completo; un reintento inmediato no cambia un rechazo deliberado.

Seguridad primero

Antes de continuar

  • No sigas reintentando en bucle desde muchas instancias a la vez: si el rechazo es por capacidad, más intentos lo empeoran.

Puedes hacerlo con seguridad

  • Estado del servidor
  • Mensaje completo y registro del servidor

Deja estas tareas a un profesional cualificado

  • No intentes esta tarea profesional: Revisar reservas y límite de conexiones
  • No intentes esta tarea profesional: Esperar o corregir el estado del servidor

Lo que un técnico debe poder justificar

Viene un técnico a casa

Estos son los pasos que tiene que hacer y enseñarte. Márcalos mientras trabaja: si se salta pasos, no aceptes el cambio de pieza.

No son instrucciones para que abras o manipules el equipo. Son las comprobaciones que deben sostener una conclusión técnica.

  1. Revisar reservas y límite de conexiones

    Qué haceEl DBA compara max_connections, superuser_reserved_connections y reserved_connections con las sesiones abiertas.

    Te tiene que enseñarlos valores configurados y el recuento de sesiones.

    Por escritoel ajuste decidido.

  2. Esperar o corregir el estado del servidor

    Qué haceEl DBA revisa por qué el servidor está en arranque, parada o recuperación y cuándo volverá a aceptar conexiones.

    Te tiene que enseñarel registro del servidor.

    Por escritola causa y la hora de vuelta al servicio.

Antes de aceptar una pieza o reparación

Aún no ha demostrado nada. No aceptes un cambio de pieza solo por el código.

Sigue estos pasos

Aviso: Sigue el orden documentado. Un código identifica el sistema afectado, pero por sí solo no demuestra qué pieza está averiada.

  1. Estado del servidor

    Requiere herramientas

    Quién:
    el desarrollador o el DBA.
    Cómo:
    ejecuta pg_isready con el host y puerto de la aplicación.
    Resultado que importa:
    el código de salida.
    Si devuelve 1:
    confirma que el servidor rechaza conexiones por su estado; espera a que termine el arranque o la recuperación.
    Si devuelve 0:
    descarta un estado transitorio; pasa al texto del mensaje y a las ranuras.
    Evidencia a conservar:
    salida con hora.

    pg_isready no necesita credenciales válidas. No lances bucles de conexión para medir: agravan la situación.

    Evidencia: PostgreSQL database connection control functions · PostgreSQL 18 pg_isready

  2. Mensaje completo y registro del servidor

    Requiere herramientas

    Quién:
    el DBA o administrador.
    Cómo:
    conserva el texto completo que recibió el cliente y busca la misma hora en el registro del servidor.
    Resultado que importa:
    qué motivo de rechazo indica.
    Si habla de ranuras o del límite de conexiones:
    apunta a capacidad; revisa las sesiones abiertas.
    Si habla de arranque o recuperación:
    indica un estado del servidor; no es un problema de la aplicación.
    Evidencia a conservar:
    texto del mensaje y extracto del registro.

    Solo con acceso al servidor; no compartas el registro con datos personales.

    Evidencia: PostgreSQL 18 Appendix A: Error Codes · PostgreSQL connection settings

Situación no resuelta

Si el error persiste, no sigas probando por tu cuenta. Mira qué tiene que hacer y enseñarte el técnico.

Técnico virtual

¿Sigue apareciendo 08004 tras comprobarlo?

Este recorrido usa el código exacto y tus respuestas para elegir una prueba, su resultado esperado y la siguiente bifurcación.

Dónde se aplica este código

Un código solo tiene significado dentro del producto y la versión correctos.

Ámbito principal

Sistema
Software y sistemas
Marca
PostgreSQL
Tipo de producto
Base de datos

Variantes conocidas del código

  • PostgreSQL 08004
  • sqlserver_rejected_establishment_of_sqlconnection
  • SQLSTATE 08004

Qué significa

El apéndice A asigna 08004 a sqlserver_rejected_establishment_of_sqlconnection, en la clase 08. Significa que el rechazo vino del servidor, no de la red. La documentación describe estados en los que el servidor funciona pero no admite conexiones: arranque, parada y recuperación tras caída. También reserva ranuras de conexión para superusuarios y roles concretos cuando quedan pocas libres. El código no dice cuál de estas situaciones se dio; lo aclaran el texto del mensaje y el registro del servidor.

Advertencias y condiciones de parada

  • Precauciónadvertencia editorial

    No sigas reintentando en bucle desde muchas instancias a la vez: si el rechazo es por capacidad, más intentos lo empeoran.

    Evidencia: PostgreSQL connection settings

Síntomas y causas

Causas probables · en orden

  • Servidor arrancando, parándose o en recuperaciónPosible

    El servidor está activo pero en un estado que no admite conexiones. pg_isready devuelve 1 y PQping devuelve PQPING_REJECT.

    Evidencia: PostgreSQL database connection control functions · PostgreSQL 18 pg_isready

  • Ranuras de conexión reservadasPosible

    Quedan pocas ranuras libres y solo se aceptan superusuarios o roles con pg_use_reserved_connections. Se ve porque el administrador sí conecta y la aplicación no.

    Evidencia: PostgreSQL connection settings

Fuentes y referencias técnicas

  1. 1

    PostgreSQL 18 Appendix A: Error Codes

    PostgreSQL Global Development Group · 2026 · official_doc

  2. 2

    PostgreSQL error and notice fields

    PostgreSQL Global Development Group · 2026 · official_doc

  3. 3

    PostgreSQL database connection control functions

    PostgreSQL Global Development Group · 2026 · official_doc

Fuentes: PostgreSQL 18 Appendix A: Error Codes · PostgreSQL error and notice fields · PostgreSQL database connection control functionsrevisado 2026-10-03 · verificado

¿Te ha resultado útil esta ficha?