簡體   English   中英

致命:用戶 postgres aurora 的密碼驗證失敗

[英]FATAL: password authentication failed for user postgres aurora

如果我創建一個以 postgres 身份登錄到根數據庫的用戶並創建一個用戶......它不起作用。 我究竟做錯了什么?

postgres=> CREATE ROLE myUser WITH LOGIN PASSWORD 'xxx';
CREATE ROLE
postgres=> GRANT CONNECT ON DATABASE myDatabase TO myUser;
GRANT
postgres=> GRANT USAGE ON SCHEMA public to myUser;
GRANT
postgres=> GRANT SELECT  ON ALL TABLES IN SCHEMA public TO myUser;
GRANT

當我 go 進行身份驗證時,出現錯誤。 psql -h $dbURL -U myUser myDatabase

致命:用戶 myUser 的密碼驗證失敗

您創建的用戶是“myuser”,因為不在雙引號內的 SQL 標識符的大小寫被忽略,並折疊為小寫。 但是在命令行工具中不會忽略大小寫,因此您嘗試以不存在的用戶“myUser”身份登錄。 由於不存在的用戶沒有密碼 hash,所以密碼認證肯定會失敗。

您可能想檢查是否存在.pgpass文件並檢查環境變量以查看您是否設置了PGPASSWORDPGPASSFILE 在任何這些情況下,psql 都不會提示輸入密碼,而是從文件或變量中獲取密碼——如果有什么不正確的,它會給你那個確切的錯誤。

你可以

  1. 取消設置PGPASSWORDPGPASSFILE變量
  2. 擺脫.pgpass文件
  3. .pgpass文件中刪除與此連接對應的條目
  4. 更正PGPASSFILE / PGPASSWORD變量的值或.pgpass文件的內容
  5. 將 psql 與-W開關一起使用,使其忽略其他設置並始終提示輸入密碼
  6. 更改pg_hba.conf文件中基於主機的身份驗證設置以更改身份驗證方法或信任某種類型的連接

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM