Postgresql

pg_hba.conf - 沒有密碼的 psql 本地登錄

  • November 10, 2021

pg_hba.conf的 PostgreSQL-12.6 安裝中有這些設置

# "local" is for Unix domain socket connections only
local   all             all                                     md5
local   all             postgres                                trust   # ident
# IPv4 local connections:
host    all             all             127.0.0.1/32            trust   # md5
# IPv6 local connections:
host    all             all             ::1/128                 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     trust
host    replication     all             127.0.0.1/32            trust
host    replication     all             ::1/128                 trust

local all postgres trustexecpt shoudl 允許我在本地登錄psql 而無需postgres以unix 使用者身份查詢密碼。

然而:

postgres@my-vm:/opt/db/postgres/bin> psql
Password for user postgres:

postgres使用者還沒有現有的 psql 密碼

local  all  all       md5  
local  all  postgres  trust   # ident  

請記住,pg_hba 中的條目是按照它們給定的順序處理的。

“本地所有 postgres 信任”……應該允許我登錄……沒有……密碼

如果它出現在強制每個本地連接使用md5身份驗證的行之前,它就會出現!

引用自:https://serverfault.com/questions/1083133