真的很难让Postgres成立。我已经安装了家庭酿造(版本14)。并通过网站安装了Postgres应用程序。
当我在终端中输入命令'psql‘时,会出现以下错误:
psql: error: connection to server on socket "/tmp/.s.PGSQL.5432" failed: FATAL: role "edac" does not exist
我的服务器正在5432端口上运行。
任何帮助都将不胜感激。
发布于 2021-11-02 08:38:26
Postgres的标准安装在pg_hba.conf
中启用了pg_hba.conf
身份验证。如果您在没有参数的情况下启动psql
,它将使用与当前OS用户同名的DB角色连接--显然,在您的示例中是"edac“。
您可以在数据库中创建这样的角色(并向其授予所需的权限),也可以使用另一个(现有的)角色进行连接。在新安装中,至少存在数据库角色"postgres“,它是超级用户。
要么用用户名和密码登录。或者更简单,以OS用户"postgres“的身份连接,允许同名DB角色的对等身份验证。比如:
sudo -u postgres psql
然后,您可能希望创建一个名为"edac“的DB角色(没有超级用户权限):
CREATE ROLE edac;
或者,只需使用shell命令创作者一步就可以做到这一点。
sudo -u postgres createuser edac
请参见:
https://stackoverflow.com/questions/69813481
复制相似问题