Как передать пароль в pg_dump?

Такая задача: есть сервер с настройками

# IPv4 local connections:
host	 ALL	 ALL	 127.0.0.1/32	 md5
host	 ALL	 ALL	 0.0.0.0/0	 md5

Каждую ночь должен выполняться бекап базы с назначеного задания из батника

C:\PostgreSQL\bin\pg_dump.exe --host 192.168.%COMPUTERNAME:~1,1%.51  --port 5432 --username postgres  --format custom 
--blobs --verbose --file "E:\RPTKBackup\RPTKARH\APT00%COMPUTERNAME:~0,2%_%VDATE%_%VTIME%.backup" A%COMPUTERNAME:~0,2%
xcopy E:\RPTKBackup\RPTKARH\APT00%COMPUTERNAME:~0,2%_%VDATE%_%VTIME%.backup \\192.168.%COMPUTERNAME:~1,1%.50\RPTKBackup\RPTKARH\
goto end2

но при выполнении запрашивается пароль пользователя. как можно его туда передать?

при использовании --no-password
выдается ошибка
connecting to database failed: fe_sendauth: no password supplied
aborted because of error

Что можно сделать?

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

1. Если у вас бакап делается

1. Если у вас бакап делается с машины, на которой больше никто не работает, можно для данной машины в pg_hba.conf поставить trust и работать без пароля
2. Если пароль таки нужен, можете использовать для предоставления пароля
a) переменную окружения PGPASSWORD
b) файл .pgpass (см. http://postgresql.ru.net/manual/libpq-pgpass.html)

Пароль таки нужен.1 - не

Пароль таки нужен.
1 - не подходит, на ней работают.
2 - а) как, где эту переменную настроить, не подскажите? или где можно почитать
б) писать в явном виде нужно хост:порт:имя базы:юзер:пароль
на лету это подхватится? или сервак ребутнуть придется?

UPD

Кажется разобрался: в батник добавил

SET PGBIN=C:\PostgreSQL\bin\
SET PGDATABASE=test
SET PGHOST=localhost
SET PGPORT=5432
SET PGUSER=postgres
SET PGPASSWORD=postgres

и всё стрекочет)

admin - спасибо!)

Не подхватывается пароль из файла pgpass.conf

Батник:

"D:\pg_data\bin\pg_dump.exe" -U postgres -F c 1c_Buh > "X:\pg_buh.sql"
"C:\Program Files (x86)\7-Zip\7z.exe" a -tzip "X:\1c_buh_%DATE%.zip" "X:\pg_buh.sql"

После этого в командной строке запрашивается пароль. Почему-то, он не подхватывается из файла pgpass.conf. В чем может быть проблема?

pgpass.conf :
localhost:*:*:postgres:password

UPD: Проблему решил, был неправильный путь до конфига

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Back to top

(С) Виктор Вислобоков, 2008-2023