[英]Peer authentication failed with docker and postgreSQL / Mac OS / Python
[英]Ubuntu server, postgresql, python, “Peer auth failed”
嗨,我得到以下和我見過的其他解決方案似乎沒有工作...在ubuntu服務器終端(虛擬機vm):錯誤致命:用戶“a4apps”的對等身份驗證失敗
我的Ubuntu服務器os用戶名是一樣的。 我重新開始了我的postgres。 我嘗試通過以下方式更改我的pg_hba.conf文件:將IPv4主機方法從md5更改為“trust”,並在其下添加一行“host all all myubuntuserverip / 32 trust”
我試圖通過python腳本訪問它。 我正在使用psycopg
con = psycopg2.connect(database='fieldtest2', user='a4apps')
我創建了用戶:sudo -u postgres create user a4apps superuser no,create databases yes,create other users no。 創建數據庫:sudo -u postgres createdb fieldtest2 -O a4apps
我正在學習本教程: 這里
我的想法已經不多了。 任何指導將不勝感激。 謝謝邁克
此特定錯誤消息:
用戶“a4apps”的對等身份驗證失敗
指peer
每個被選中的身份驗證方法pg_hba.conf
和連接嘗試不是由OS用戶做出a4apps
,相反的是這種身份驗證方法要求。
默認的Ubuntu pg_hba.conf
包含以下行:
# Database administrative login by Unix domain socket local all postgres peer # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all peer
要允許除postgres
之外的任何用戶的本地無密碼連接,您可以在最后一行中替換trust
peer
。
您在pg_hba.conf
嘗試的與IPv4相關的更改對您的腳本沒有影響,因為它沒有通過TCP / IP連接。 如果連接字符串提到了主機名,則它將使用TCP / IP並在pg_hba.conf
觸發相應的規則。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.