Ошибка аутентификации по паролю при подключении к базе данных через python psycopg2

Я пытаюсь подключиться к моей локальной базе данных postgres через записную книжку python jupyter. Я использую psycopg2, который, кажется, установлен правильно.

Я только что создал пользователя с именем username с паролем my_pw. Я сделал это прямо в окне запроса PG Admin:

CREATE USER username
GRANT ALL ON DATABASE my_db TO username;
ALTER USER username WITH PASSWORD 'my_pw';

Мой код подключения выглядит так:

import psycopg2 as p

conn = p.connect("host='localhost' dbname='my_db' user='username' password='my_pw'")

Когда я запускаю его, я получаю это сообщение об ошибке:

OperationalError: FATAL:  password authentication failed for user "username"

Был бы очень признателен за помощь!


person asguldbrandsen    schedule 13.11.2018    source источник


Ответы (2)


Разрешите этому пользователю войти в файл конфигурации pg_hba.conf.

Для получения дополнительной информации

person Puneet Khandelwal    schedule 10.01.2019

предоставить пользователю доступ к сокету unix на pg_hba conf следующим образом

local   all             postgres                                md5
local   all             <some user> # <- user registered here   md5

если вы используете операционную систему Linux, отредактируйте файл на /etc/postgresql/12/main/pg_hba.conf

person perymerdeka    schedule 26.11.2020