Sie brauchen keine Zwischendatei zu erstellen. Sie können
pg_dump -C -h localhost -U localuser dbname | psql -h remotehost -U remoteuser dbname
ou
pg_dump -C -h remotehost -U remoteuser dbname | psql -h localhost -U localuser dbname
mit psql
o pg_dump
um eine Verbindung zu einem entfernten Host herzustellen.
Bei einer großen Datenbank oder einer langsamen Verbindung kann es schneller sein, eine Datei zu dumpen und die Datei komprimiert zu übertragen.
Wie Kornel schon sagte, ist es nicht nötig, in eine Zwischendatei zu dumpen. Wenn Sie komprimiert arbeiten wollen, können Sie einen komprimierten Tunnel verwenden.
pg_dump -C dbname | bzip2 | ssh remoteuser@remotehost "bunzip2 | psql dbname"
ou
pg_dump -C dbname | ssh -C remoteuser@remotehost "psql dbname"
aber auch bei dieser Lösung muss an beiden Enden eine Sitzung eingerichtet werden.
Anmerkung: pg_dump
dient zum Sichern und psql
ist für die Wiederherstellung. Also, die Der erste Befehl in dieser Antwort kopiert von lokal nach fern und der zweite von fern nach lokal . Mehr -> https://www.postgresql.org/docs/9.6/app-pgdump.html