Adrian, Andrew, thanks and apologies for the late reply

Il 30/11/2018 05:08, Andrew Gierth ha scritto:
"Moreno" == Moreno Andreo <moreno.and...@evolu-s.it> writes:
  Moreno> The command I'm using is
  Moreno> root@xxxxx:~# pg_dump -v -C -h <remote host> -p 6543 -U postgres
  Moreno> <dbname> | psql -h localhost -p 6543 -U postgres <dbname>
  Moreno> It presents a double password prompt after I run it:
  Moreno> Password: Password for user postgres:

This is going to prompt once for the remote host's password and twice
for the local one (because -C), and the concurrently-running commands
are going to be fighting over access to the terminal to do it. Best
avoided by using pgpass or non-password-based auth methods.

More seriously, you're misunderstanding how -C works. When you use -C,
the database you specify to psql (or pg_restore) is NOT the database
you're restoring into - the restored db will ALWAYS have the same name
as it had when dumped (if that's not what you want then don't use -C).
Instead, the database you specify to psql or pg_restore is the database
to connect to to issue the CREATE DATABASE command, which should usually
be 'postgres'. That explains this bit:

  Moreno> If I create database (just database, not schema) on target
  Moreno> machine, I receive the error "database xxxx already exists" but
  Moreno> the dump goes on If I don't create it, I receive the error
  Moreno> "database xxxx does not exist" and processing aborts.

I removed -C usage since the target database (the database itself, not the schema) is created with a CREATE DATABASE before issuing pg_dump (so I don't need it), but strange prompt behavior remained the same

I'm having a really hard time these days, so I can't investigate further. Maybe on holidays, when I hope the pressure will be released a bit.

Will report as soon as I can.

THanks again

Cheers,

Moreno.-



Reply via email to