PostgreSQL – How to Perform Dump and Restore

pg-dumppg-restorepostgresqlwindows

I can't seem to dump/restore on Windows with my database. Lines used and error messages:

pg_dump -h localhost -U postgres --format=c -O -d ue > latest.dump
pg_restore -h localhost -U postgres -d ue latest.dump

Getting this error,

pg_restore: [archiver] input file does not appear to be a valid archive

With this,

pg_dump -h localhost -U postgres -O -d ue > latest.dump
psql -h localhost -U postgres -d ue -f latest.dump

I get this error,

psql:latest.dump:1: ERROR: invalid byte sequence for encoding "UTF8": 0xff

I'm completely stumped. Most of the search results relate to not using the correct pg_restore/psql with the file type exported by pg_dump, but as you can see above, I've accounted for that.

latest.dump seems to be filling up correctly, at least in the plain format it exports SQL that I can read and is the correct export of the database.

Best Answer

Apparently the problem was the > operator. Changing that to -f to specify the file for the dump, resolved the problem (using the plain format).

I was writing a Powershell script which may have been the underlying cause. The commands were accepted, but there could have been a corruption issue there.