Обсуждение: Problems with pg_dump/restore and OIDs

Поиск
Список
Период
Сортировка

Problems with pg_dump/restore and OIDs

От
Khristian
Дата:
Hi,
I'm trying to backup a schema in a database which uses OIDs. Using
pg_dump | psql works fine, but I need to backup it to a file. So I
tried using pg_dump like this:
pg_dump -h localhost -U usr -F c -f dump.sql -o -n my_schema -b source_db_name
And then restoring it with:
pg_restore -d target_db_name -h localhost -U usr -W -F c dump.sql
And it always fails when restoring some of the OIDs or because of
foreign key restrictions.

How can I backup this successfully?

Thanks,
--
Khristian Alexander Schönrock

Re: Problems with pg_dump/restore and OIDs

От
Adrian Klaver
Дата:
On Thursday 20 January 2011 6:59:08 am Khristian wrote:
> Hi,
> I'm trying to backup a schema in a database which uses OIDs. Using
> pg_dump | psql works fine, but I need to backup it to a file. So I
> tried using pg_dump like this:
> pg_dump -h localhost -U usr -F c -f dump.sql -o -n my_schema -b
> source_db_name And then restoring it with:
> pg_restore -d target_db_name -h localhost -U usr -W -F c dump.sql
> And it always fails when restoring some of the OIDs or because of
> foreign key restrictions.
>
> How can I backup this successfully?
>
> Thanks,
> --
> Khristian Alexander Schönrock

One potential problem is that you are restricting the dump to one schema. From
the docs:

"Note: When -n is specified, pg_dump makes no attempt to dump any other database
objects that the selected schema(s) might depend upon. Therefore, there is no
guarantee that the results of a specific-schema dump can be successfully
restored by themselves into a clean database. "

Similar issue possibly for the OIDS. Unless you are dumping to an empty database
it is quite possible that the OIDS are already in use.

--
Adrian Klaver
adrian.klaver@gmail.com