PostgreSQL 9.2.4
我无法再使用过去工作过的用户登录。我假设配置有问题。因此,为了进行测试,我创建了一个测试用户角色“testing”,其选项与相关角色相同(作为仍然可以登录的“postgres”用户!):
CREATE ROLE testing WITH SUPERUSER NOCREATEDB NOCREATEROLE LOGIN PASSWORD 'pw';
角色创建成功:
List of roles
Role name | Attributes | Member of
------------+------------------------------------------------+-----------
postgres | Superuser, Create role, Create DB, Replication | {}
testing | Superuser | {}
...
但是,登录会显示以下消息:
# psql -h 127.0.0.1 -p 5434 -U testing
Password for user testing:
psql: FATAL: PAM authentication failed for user "testing"
FATAL: PAM authentication failed for user "testing"
当我尝试使用原始角色时,我也会遇到此错误。
pg_hba.conf:
# "local" is for Unix domain socket connections only
local all all pam
# IPv4 local connections:
host all all 0.0.0.0/0 pam
有人知道问题可能是什么吗?
主要问题是尝试登录的数据库角色不存在 linux 用户。还有一些其他的小配置问题(Linux 组、权限)需要修复。然后就可以再次登录了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)