我使用以下命令安装了 PostgreSQL:
$ sudo apt install postgresql postgresql-contrib libpq-dev
help.ubuntu.com和Digitalocean都同意,在安装后,Postgres 设置为使用身份验证,“这意味着它将 Postgres 角色与匹配的 Unix/Linux 系统帐户相关联。如果 Postgres 中存在角色,则为 Unix/Linux 用户名具有相同名称的人能够以该角色的身份登录。”ident
但是,在默认客户端身份验证配置文件中,身份验证设置为peer
or md5
:
$ sudo less /etc/postgresql/10/main/pg_hba.conf
...
# Database administrative login by Unix domain socket
local all postgres peer
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all peer
# IPv4 local connections:
host all all 127.0.0.1/32 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 peer
host replication all 127.0.0.1/32 md5
host replication all ::1/128 md5
我使用 PostgreSQL 作为 Ruby on Rails 的开发数据库,它运行良好。考虑到我从未编辑过,我正在使用什么身份验证方法pg_hba.conf
?