[postgresql] PostgreSQL : 역할이 로그인 할 수 없습니다
로컬 서버에서 내 postgres DB에 연결하는 데 문제가 있습니다. 나는 비슷한 문제를 봤고이 매뉴얼 https://help.ubuntu.com/stable/serverguide/postgresql.html을 생각해 냈습니다.
그래서:
pg_hba.conf
말한다 :
# 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
그런 다음 사용자를 만들고 비밀번호를 지정합니다.
postgres=# create role asunotest;
CREATE ROLE
postgres=# alter role asunotest with encrypted password '1234';
ALTER ROLE
그러나 그것은 나를 못하게합니다 :
-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
무엇이 문제가 될 수 있습니까?
답변
생성 한 역할은 로그인 할 수 없습니다. 로그인 할 수있는 역할을 부여해야합니다.
이를 수행하는 한 가지 방법은 postgres
사용자 로 로그인 하여 역할을 업데이트하는 것입니다.
psql -U postgres
로그인 한 후 다음을 입력하십시오.
ALTER ROLE "asunotest" WITH LOGIN;
다음은 설명서
http://www.postgresql.org/docs/9.0/static/sql-alterrole.html입니다.
답변
CREATE ROLE blog WITH
LOGIN
SUPERUSER
INHERIT
CREATEDB
CREATEROLE
REPLICATION;
COMMENT ON ROLE blog IS 'Test';
답변
pgadmin4 사용 :
- 사이드 메뉴에서 역할 선택
- 대시 보드에서 속성을 선택하십시오.
- 편집을 클릭하고 권한을 선택하십시오
이제 로그인, 역할 및 기타 옵션을 활성화 또는 비활성화 할 수 있습니다
답변
뛰다
sudo su - postgres
psql
ALTER ROLE 'dbname'