这周我在Ubuntu 18.04上安装了Postgres 10,并创建了一个数据库。我将我的Ubuntu登录名分配为数据库角色(用户名)。有两天时间,我发出命令没有问题:
sudo psql [databasename] [username].
昨天,我在pg_hba.conf文件中添加了行,以限制仅外部访问该用户名。然后,在发出上述命令(输入psql)时,我得到
psql: FATAL: Peer authentication failed for user "[username]"
因此从pg_hba.conf中删除了新行,然后重新启动Postgres。我仍然收到相同的错误消息。
我使用sudo -u postgres psql输入了psql。那行得通,但是它以postgres用户身份登录。只要这不会带来安全风险,就可以,但是我更喜欢使用角色名称登录。
怎么了?
我是Postgres的新手。谢谢你的帮助。