send password to pg_dump

Started by shauncalmost 19 years ago2 messages
#1shaunc
shaun@cranedata.us

Hello,

I'm trying to run pg_dump programmatically, and I'm wondering how I can send
it a password.

I'm running it with a system() call in a child process, and sending the
password in from the parent process on stdin, but somehow pg_dump always
finds out how to ask my terminal for a password. How do I fool it?

(I need this to work in linux... in python would be preferable too.)

Thanks for any advice.

- Shaun
--
View this message in context: http://www.nabble.com/send-password-to-pg_dump-tf3048210.html#a8473174
Sent from the PostgreSQL - hackers mailing list archive at Nabble.com.

#2Andrew Dunstan
andrew@dunslane.net
In reply to: shaunc (#1)
Re: send password to pg_dump

shaunc wrote:

Hello,

I'm trying to run pg_dump programmatically, and I'm wondering how I can send
it a password.

I'm running it with a system() call in a child process, and sending the
password in from the parent process on stdin, but somehow pg_dump always
finds out how to ask my terminal for a password. How do I fool it?

(I need this to work in linux... in python would be preferable too.)

1. this is the wrong forum for this question - here we discuss
postgresql developments, not usage
2. use a pgpass file, possibly with a PGPASSFILE environment setting as
well - see the docs for details. This works on all platforms and should
work with anything at all calling pg_dump.
3. In general, the only way to "fool" programs properly this way is to
use expect or some equivalent that uses ptys. In this case, it would be
overkill.

cheers

andrew