Ubuntu server, postgresql, python, "Peer auth failed"



嗨,我得到了以下内容,我看到的其他解决方案似乎不起作用。。。在ubuntu服务器终端(virtualboxvm)中:致命错误:用户"a4apps"的对等身份验证失败

我的Ubuntu服务器操作系统用户名是一样的。我重新开始了我的课程。我已尝试通过以下方式更改我的pg_hba.conf文件:将IPv4主机方法从md5更改为"信任"并在下面添加一行"host all myubuntuserip/32 trust">

我正试图通过python脚本访问它。我正在使用psycopg

con = psycopg2.connect(database='fieldtest2', user='a4apps')

我创建了用户:sudo-u postgres create user a4apps超级用户否,创建数据库是,创建其他用户否。创建的数据库:sudo-u postgres createdb fieldtest2-O a4apps

我遵循这个教程:这里

我没什么主意了。如有任何指导,我们将不胜感激。谢谢Mike

此特定错误消息:

用户"a4apps"的对等身份验证失败

表示根据pg_hba.conf选择了peer身份验证方法,表示与此身份验证方法的要求相反,OS用户a4apps没有进行连接尝试。

默认的Ubuntupg_hba.conf有以下行:

#通过Unix域套接字进行数据库管理登录本地所有postgres对等#类型数据库用户地址方法#"local"仅用于Unix域套接字连接local all all peer

要允许除postgres之外的任何用户进行本地无密码连接,可以在最后一行中用trust替换peer

您在pg_hba.conf中尝试的与IPv4相关的更改对您的脚本没有影响,因为它没有通过TCP/IP连接。如果连接字符串提到主机名,那么它将使用TCP/IP并触发pg_hba.conf中的相应规则。

最新更新