Du behøver ikke oprette en mellemfil. Du kan gøre
pg_dump -C -h localhost -U localuser dbname | psql -h remotehost -U remoteuser dbname
eller
pg_dump -C -h remotehost -U remoteuser dbname | psql -h localhost -U localuser dbname
ved hjælp af psql
eller pg_dump
for at oprette forbindelse til en fjernvært.
Med en stor database eller en langsom forbindelse kan det være hurtigere at dumpe en fil og overføre den komprimerede fil.
Som Kornel sagde, er der ingen grund til at dumpe til en mellemfil, hvis du vil arbejde komprimeret, kan du bruge en komprimeret tunnel
pg_dump -C dbname | bzip2 | ssh [email protected] "bunzip2 | psql dbname"
eller
pg_dump -C dbname | ssh -C [email protected] "psql dbname"
men denne løsning kræver også at få en session i begge ender.
Bemærk: pg_dump
er til sikkerhedskopiering og psql
er til gendannelse. Så den første kommando i dette svar er at kopiere fra lokal til fjern, og den anden er fra fjern til lokal . Mere -> https://www.postgresql.org/docs/9.6/app-pgdump.html