Thread: Why is there no option -U with pg_dump?

Why is there no option -U with pg_dump?

From
Janning Vygen
Date:
Why is there no option -U with pg_dump?

when i call psql i can connect as another user and i usually dont
need a password because i trust all local users via hba.conf, right?

thats the way it works on my host. but why cant i connect via pg_dump?
i need this because every devolper gets his own database and
sometimes a developer wants to mirror the production database. i
tried to write a little shell script which drops and recreates your
user databse and then uses the dump of the production database to
create schema and fill teh rows. useful option is --no-owner to
supress the connect statements.

But i cant connect without user input. because the option -U ask for
username and password.

Any workaround or suggestions?

janning

Re: Why is there no option -U with pg_dump?

From
mirko@picard.inka.de (Mirko Zeibig)
Date:
Janning Vygen <vygen@gmx.de> wrote:
> Why is there no option -U with pg_dump?
>
> thats the way it works on my host. but why cant i connect via pg_dump?
> i need this because every devolper gets his own database and
> sometimes a developer wants to mirror the production database. i
> tried to write a little shell script which drops and recreates your
> user databse and then uses the dump of the production database to
> create schema and fill teh rows. useful option is --no-owner to
> supress the connect statements.
>
> But i cant connect without user input. because the option -U ask for
> username and password.
Well, you could switch to the user postgres (via sudo)and then
running pg_dump out of a shellscript! I do:
sudo -u postgres /usr/bin/pg_dump
having an entry like:
mirko   ALL=(postgres) NOPASSWD:/usr/bin/pg_dump
in my /etc/sudoers.

See http://freshmeat.net/projects/sudo/ for more information, I guess most
Linux-distribution install sudo by default anyway.

Regards
Mirko
--
GPG public key  = http://www.zeibig.net/public_key.asc
GPG fingerprint = E85C D909 DC39 47CE 1757  BA36 4C68 41C8 BED4 5A8E