servidor rehusada puerto pudo postgres not iniciar habilitar existe directorio datos could conexión conectar con como archivo ala postgresql vagrant

postgresql - puerto - psql: no se pudo conectar con el servidor: conexión rehusada



Psql no pudo conectarse al servidor: ¿No existe tal archivo o directorio, error 5432? (12)

Estoy tratando de ejecutar psql en mi máquina Vagrant, pero psql este error:

psql: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

Nota: Vagrant 1.9.2 Box: ubuntu / trusty64, https://atlas.hashicorp.com/ubuntu/boxes/trusty64

Comandos EDITAR que he usado para instalar y ejecutar postgres:

  • sudo apt-get update
  • sudo apt-get install postgresql
  • sudo su postgres
  • psql -d postgres -U postgres

Tuve el mismo problema, pero ninguna de las respuestas aquí ayudó.

Cómo lo arreglé (mac)

  • Intente iniciar postgresql con pg_ctl -D /usr/local/var/postgres start
  • Busque el mensaje de error que dice algo así como FATAL: could not open directory "pg_tblspc": No such file or directory .
  • Cree el directorio que falta mkdir /usr/local/var/postgres/pg_tblspc
  • Repita desde el paso uno hasta que haya creado todos los directorios que faltan
  • Cuando termine y luego intente iniciar postgresql nuevamente, podría decir FATAL: lock file "postmaster.pid" already exists
  • Eliminar postmaster.pid : rm /usr/local/var/postgres/postmaster.pid
  • Inicie postgres con: pg_ctl -D /usr/local/var/postgres start
  • Hecho ✨

¿El /etc/postgresql/9.6/main/postgresql.conf muestra ese puerto asignado? En mi instalación predeterminada de Xubuntu Linux, la mía mostró port = 5433 por alguna razón, lo mejor que puedo recordar, pero comenté la línea en ese mismo archivo que decía listen_addresses = ''localhost'' y descomentó la línea listen_addresses = ''*'' . Así que tal vez comience y verifique allí. Espero que ayude.


Abra su administrador de base de datos y ejecute este script

update pg_database set datallowconn = ''true'' where datname = ''your_database_name'';


Dentro de zsh:

rm -rf /usr/local/var/postgres && initdb /usr/local/var/postgres -E utf8

Esto es lo único que me funcionó después de incontables horas de resolución de problemas.



He tenido este mismo problema, relacionado con la configuración de mi archivo pg_hba.conf (ubicado en /etc/postgresql/9.6/main ). Tenga en cuenta que 9.6 es la versión postgresql que estoy usando.

El error en sí está relacionado con una configuración incorrecta de postgresql, lo que hace que el servidor se bloquee antes de iniciarse.

Sugeriría seguir estas instrucciones:

  1. Certifique que el servicio postgresql se está ejecutando, utilizando el sudo service postgresql start
  2. Ejecute pg_lsclusters desde su terminal
  3. Verifique cuál es el clúster que está ejecutando, la salida debería ser algo como:

    Versión: directorio de datos del propietario del estado del puerto del clúster

    9.6 ------- main - 5432 postgres en línea /var/lib/postgresql/9.6/main

    Haga caso omiso de los signos ''---'', ya que se utilizan allí solo para la alineación. La información importante es la versión y el clúster. También puede verificar si el servidor se está ejecutando o no en la columna de estado.

  4. Copie la información de la versión y el clúster, y use así: pg_ctlcluster <version> <cluster> start , así que en mi caso, usando la versión 9.6 y el clúster ''main'', sería pg_ctlcluster 9.6 main start
  5. Si algo está mal, entonces postgresql generará un registro, al que se puede acceder en /var/log/postgresql/postgresql-<version>-main.log , por lo que en mi caso, el comando completo sería sudo nano /var/log/postgresql/postgresql-9.6-main.log .
  6. La salida debe mostrar cuál es el error.

    2017-07-13 16:53:04 BRT [32176-1] LOG: método de autenticación no válido "todos"
    2017-07-13 16:53:04 BRT [32176-2] CONTEXTO: línea 90 del archivo de configuración "/etc/postgresql/9.5/main/pg_hba.conf"
    2017-07-13 16:53:04 BRT [32176-3] FATAL: no se pudo cargar pg_hba.conf

  7. Solucione los errores y reinicie el servicio postgresql a través del sudo service postgresql restart y debería estar bien.

He buscado mucho para encontrar esto, el crédito va a esta post .

¡La mejor de las suertes!


Me sucedió lo mismo ya que había cambiado algo en el /etc/hosts . Después de volver a cambiarlo a 127.0.0.1 localhost , funcionó para mí.



Solo estoy publicando esto para cualquiera que se sienta perdido y sin esperanza como lo hice cuando encontré esta pregunta. Parece que a veces al editar algunos archivos de configuración relacionados con psotgresql, uno puede cambiar accidentalmente los permisos del archivo:

Observe cómo pg_hba.conf pertenece a la raíz y los usuarios ni siquiera pueden leerlo. Esto hace que postgres no pueda abrir este archivo y, por lo tanto, no pueda iniciar el servidor, arrojando el error visto en la pregunta original.

Mediante la ejecución

sudo chmod +r pg_hba.conf

Pude hacer que este archivo sea nuevamente accesible para el usuario de postgres y luego después de ejecutar

sudo service postgresql start

Pude volver a ejecutar el servidor.


Tuve el mismo error cuando creo el SQL db en una VM. Había cambiado el valor predeterminado de /etc/postgresql/9.3/main/postgresql.conf shared_buffers = 200MB al 75% de mi RAM total. Bueno, olvidé asignar esa RAM en la VM. Cuando le di el comando para hacer una nueva base de datos, recibí el mismo error.

Apagado, le dio al bebé su biberón (RAM) y listo, funcionó.


Usar comando:

rm -rf /usr/local/var/postgres && initdb /usr/local/var/postgres -E utf8


simplemente reinstale su pgsql con la versión directa sudo apt-get install postgresql-9.5 (debe eliminar el paquete antes de instalar uno nuevo)