On 9/7/23 23:29, Les wrote:
> I'm trying to migrate a database from version 11 to version 15.
>
> I have created a dump file on v11:
>
> pg_dump --dbname=not_telling -Fc --no-owner > dump
--no-owner is ignored for non-text outputs. It is handled on the
pg_restore end.
>
> Then I was trying to import it on v15:
>
> pg_restore -v --dbname=not_telling --no-user /restore/dump
I'm guessing it was actually --no-owner not --no-user?
> pg_restore: error: could not read from input file: end of file
Are:
> dump
and
/restore/dump
pointing at the same thing?
Was the dump file transferred from one location to another?
If so how?
> Is the custom dump format of v11 compatible with v15?
Yes it is.
https://www.postgresql.org/docs/current/app-pgdump.html
"Because pg_dump is used to transfer data to newer versions of
PostgreSQL, the output of pg_dump can be expected to load into
PostgreSQL server versions newer than pg_dump's version. pg_dump can
also dump from PostgreSQL servers older than its own version.
(Currently, servers back to version 9.2 are supported.) However, pg_dump
cannot dump from PostgreSQL servers newer than its own major version; it
will refuse to even try, rather than risk making an invalid dump. Also,
it is not guaranteed that pg_dump's output can be loaded into a server
of an older major version — not even if the dump was taken from a server
of that version. Loading a dump file into an older server may require
manual editing of the dump file to remove syntax not understood by the
older server. Use of the --quote-all-identifiers option is recommended
in cross-version cases, as it can prevent problems arising from varying
reserved-word lists in different PostgreSQL versions."
>
> Thank you,
>
> Laszlo
>
--
Adrian Klaver
adrian.klaver@aklaver.com