Не го импортирате във вашия Python програма. Точката на .pgpass
е, че това е обикновен файл, предмет на файловите разрешения на системата и libpq драйвер, който библиотеки като psycopg2 използвайте за свързване към Postgres ще потърси паролата в този файл, вместо да изисква паролата да е в изходния код или да я подкани.
Също така, това не е файл от страна на сървъра, а от страна на клиента. И така, на *nix кутия ще имате ~/.pgpass
файл, съдържащ идентификационните данни за различните връзки, които искате да можете да осъществите.
Редактиране в отговор на коментар от OP:
Две основни неща трябва да се случат за psycopg2 за правилно удостоверяване чрез .pgpass
:
- Не посочете парола в низа, предаден на
psycopg2.connect
- Уверете се, че правилният запис е добавен към
.pgpass
файл за потребителя, който ще се свързва чрез psycopg2 .
Например, за да работи това за всички бази данни за конкретен потребител на localhost порт 5432 , бихте добавили следния ред към .pgpass
на този потребител файл:
localhost:5432:*:<username>:<password>
И след това connect
повикването ще бъде в следната форма:
conn = psycopg2.connect("host=localhost dbname=<dbname> user=<username>")
Основният libpq драйвер, който psycopg2 използва след това ще използва .pgpass
файл, за да получите паролата.