PostgreSQL: el rol no está permitido para iniciar sesión

136

Tengo problemas para conectarme a mi propio postgres db en un servidor local. Busqué en Google algunos problemas similares y se me ocurrió este manual https://help.ubuntu.com/stable/serverguide/postgresql.html

entonces:

pg_hba.conf dice:

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 trust

luego creo un usuario y le asigno una contraseña:

postgres=# create role asunotest;
CREATE ROLE
postgres=# alter role asunotest with encrypted password '1234';
ALTER ROLE

pero no me deja entrar

-bash-4.2$ psql -h 127.0.0.1 -U asunotest
Password for user asunotest: 1234
psql: FATAL:  role "asunotest" is not permitted to log in

¿Cual podría ser el problema?

kurtgn
fuente

Respuestas:

289

El rol que ha creado no puede iniciar sesión. Debe otorgarle permiso al rol para iniciar sesión.

Una forma de hacerlo es iniciar sesión como postgresusuario y actualizar el rol:

psql -U postgres

Una vez que haya iniciado sesión, escriba:

ALTER ROLE "asunotest" WITH LOGIN;

Aquí está la documentación http://www.postgresql.org/docs/9.0/static/sql-alterrole.html

chalitha geekiyanage
fuente
2
Como no puedo psql, ¿cómo puedo ALTERAR EL PAPEL?
Romulus Urakagi Ts'ai
2
@ RomulusUrakagiTs'ai debe ingresar como usuario de postgres (sudo -u postgres psql postgres)
Mi Ka
9
CREATE ROLE blog WITH
  LOGIN
  SUPERUSER
  INHERIT
  CREATEDB
  CREATEROLE
  REPLICATION;

COMMENT ON ROLE blog IS 'Test';
Yuer_1008
fuente
0

Usando pgadmin4 :

  1. Seleccionar roles en el menú lateral
  2. Seleccione propiedades en el tablero.
  3. Haga clic en Editar y seleccione privilegios

Ahora puede habilitar o deshabilitar el inicio de sesión, los roles y otras opciones

Dilshad
fuente
-5

intenta correr

sudo su - postgres
psql
ALTER ROLE 'dbname'
مشعل العنزي
fuente