簡體   English   中英

mac 上用戶“postgres”的密碼驗證失敗

[英]password authentication failed for user "postgres" on mac

我在創建新的 psql 用戶時遇到問題,因為我無法以“postgres”的身份登錄 psql,我試過了

1. sudo -u postgres psql

2. sudo -u postgres createuser img_site -P -s -e

他們都要求我不知道的“postgres”密碼。 我試圖更改用戶“postgres”的 unix 密碼(我知道這很危險),但它仍然告訴我:用戶“postgres”的密碼身份驗證失敗。 我也試過 GUI pgAdmin 但它是同樣的錯誤。

我不知道是否相關:我創建了一個符號鏈接

sudo ln -s /private/tmp/.s.PGSQL.5432 /var/pgsql_socket/

為了擺脫錯誤

createuser: could not connect to database postgres: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?

檢查pg_hba.conf 它應該在頂部(在所有其他條目之前)這樣一行:

local   all             postgres                                peer

這允許postgres db用戶對所有數據庫進行本地unix套接字訪問,而無需輸入密碼。

還要清除並重新定義postgres系統用戶的密碼:

sudo passwd -d postrges
sudo su postgres -c passwd

然后運行:

su postgres -c psql template1
psql> ALTER USER postgres WITH PASSWORD '<password>';

鍵入\\q退出psql,然后完成為postgres用戶重置密碼的操作。

sudo不需要您要切換到的帳戶的密碼,而是想要您要從切換到的帳戶的密碼。 它還要求您是管理員(或在/ etc / sudoers中以其他方式代替)。 另一方面, su要求您要切換的帳戶的密碼。

我試圖為Ruby on Rails設置postgres,但由於用戶錯誤,密碼驗證失敗。 檢查服務器是否正在實際運行:

pg_ctl -D /usr/local/var/postgres status

如果你得到

pg_ctl: no server running

pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start

另外,您必須在psql中包含localhost。

psql -U postgres -h localhost

這對我有用:

用密碼'my_password'改變USER my_user;

我在我的 Macbook 上嘗試了很多不同的技巧。 這是幫助我的那個。在屏幕上,右鍵單擊 PostgreSQL14 的“屬性”,然后在“連接”選項卡中嘗試將端口號從 5432更改為 5433(反之亦然)-> 保存。 並嘗試再次打開,密碼使用“postgres”。 應該管用

屏幕

暫無
暫無

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

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