從代碼下面的代碼輸出以下內(nèi)容:2022/06/21 16:01:07 Failed to connect to db: failed to connect to 'host=localhost user=postgres database=local': server error (FATAL: Ident authentication failed for user "postgres" (SQLSTATE 28000)) exit status 1import ( "context" "log" "github.com/jackc/pgx/v4")func main() { dbCtx := context.Background() db, err := pgx.Connect( dbCtx, "postgres://postgres:smashthestate@localhost:5432/local", ) if err != nil { log.Fatalf("Failed to connect to db: %v\n", err) } defer db.Close(dbCtx) // do stuff with db...}從終端但是,可以從終端連接到數(shù)據(jù)庫(kù)。例如,如果使用相同的參數(shù)(數(shù)據(jù)庫(kù)名稱、用戶名、密碼)運(yùn)行此命令,將給出正確的輸出:psql -d local -U postgres -W -c 'select * from interest;'筆記即使用戶發(fā)送的命令既不是 也可以正常root工作postgres。本地連接的身份驗(yàn)證方法設(shè)置為trustinside pg_hba.conf:local all all trust那么,我在這里錯(cuò)過(guò)了什么?為什么在命令行中一切正常,但在代碼中卻不行?
無(wú)法使用 pgx 驅(qū)動(dòng)程序連接到 PostgreSQL 數(shù)據(jù)庫(kù),但可以使用終端
拉丁的傳說(shuō)
2022-12-26 10:32:36