PostgreSQL: peran tidak diizinkan untuk masuk

143

Saya mengalami masalah saat menghubungkan ke postgres db saya sendiri di server lokal. Saya mencari di Google beberapa masalah serupa dan mendapatkan manual ini https://help.ubuntu.com/stable/serverguide/postgresql.html

begitu:

pg_hba.conf mengatakan:

# 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

lalu saya membuat pengguna dan menetapkan kata sandi untuk itu:

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

tapi tidak mengizinkan saya masuk:

-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

apa masalahnya?

kurtgn
sumber

Jawaban:

308

Peran yang Anda buat tidak diizinkan untuk masuk. Anda harus memberi izin peran untuk masuk.

Salah satu cara untuk melakukannya adalah masuk sebagai postgrespengguna dan memperbarui peran:

psql -U postgres

Setelah Anda masuk, ketik:

ALTER ROLE "asunotest" WITH LOGIN;

Berikut dokumentasinya http://www.postgresql.org/docs/9.0/static/sql-alterrole.html

chalitha geekiyanage
sumber
2
Karena saya tidak bisa psql, bagaimana saya bisa MENGUBAH PERAN?
Romulus Urakagi Ts'ai
3
@ RomulusUrakagiTs'ai Anda harus masuk sebagai pengguna postgres (sudo -u postgres psql postgres)
Mi Ka
10
CREATE ROLE blog WITH
  LOGIN
  SUPERUSER
  INHERIT
  CREATEDB
  CREATEROLE
  REPLICATION;

COMMENT ON ROLE blog IS 'Test';
Yuer_1008
sumber
1

Menggunakan pgadmin4 :

  1. Pilih peran di menu samping
  2. Pilih properti di dasbor.
  3. Klik Edit dan pilih hak istimewa

Sekarang di sana Anda dapat mengaktifkan atau menonaktifkan login, peran, dan opsi lainnya

Dilshad
sumber
-7

coba lari

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