我不确定这是否是Postgres的预期行为,但是我正在尝试使用以下方式登录到本地Postgres安装的用户帐户:
sudo -u person psql
它提示我输入密码,然后输入:
su: unknown login: person
当我使用命令\du
列出所有Postgres用户时,可以看到该用户在此表中,如下所示:
...
other user | Permissions
person | CreateDB
other user | Permissions
...
我在笔记本电脑上使用的是Postgres的本地安装,并且此笔记本电脑上没有person
登录名。我仅在Postgres上创建了person
登录名。
如果本地计算机上不存在该用户,Postgres会阻止您登录该用户吗?不确定是否有意义。我在同时有person
个Linux用户和person
个Postgres用户的远程Linux服务器上安装了Postgres,但是在服务器上没有这个问题。
答案 0 :(得分:1)
您正在将-u
参数传递给sudo
命令,而不是psql。
但是您实际上并不需要sudo
。
以下方法应该起作用:
psql -U person