Why is there no option -U with pg_dump?

Started by Janning Vygenover 24 years ago2 messagesgeneral
Jump to latest
#1Janning Vygen
vygen@gmx.de

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

#2Mirko Zeibig
mirko@picard.inka.de
In reply to: Janning Vygen (#1)
Re: Why is there no option -U with pg_dump?

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