On 2014-02-12 13:30:52 -0500, Tom Lane wrote:
> Leonardo =?iso-8859-1?Q?M=2E_Ram=E9?= <l.rame@griensu.com> writes:
> > Hi, I'm trying to restore a database dump using pg_restore with the
> > following parameters:
>
> > pg_restore -h 127.0.0.1 -U _postgresql \
> > -c -d postgres --exit-on-error \
> > my_dump.backup
>
> > Note I used "\" to wrap the command, but the real one does not have
> > those.
>
> > pg_restore: [archiver (db)] Error while PROCESSING TOC:
> > pg_restore: [archiver (db)] Error from TOC entry 3156; 2606 432226 FK
> > CONSTRAINT fkidturno postgres
> > pg_restore: [archiver (db)] could not execute query: ERROR: relation
> > "public.turnodocumento" does not exist
> > Command was: ALTER TABLE ONLY public.turnodocumento DROP CONSTRAINT
> > fkidturno;
>
> > Why is this happening?, should I change the command I'm using to create
> > the backup?.
>
> The -c switch causes pg_restore to try to DROP every object it's about to
> restore. If you're restoring into an empty database then this is useless,
> and in fact will not work if you're also using --exit-on-error. Remove
> one or the other switch.
>
> Now, if you expected that all the objects do exist in the target database,
> then it might be worth inquiring a bit more closely into what's happening.
>
> regards, tom lane
Tom, I've dropped the db, then createdb again, then removed the -c
option, now I get this error:
pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 735; 2612 213488
PROCEDURAL LANGUAGE plpgsql postgres
pg_restore: [archiver (db)] could not execute query: ERROR: language
"plpgsql" already exists
Command was: CREATE PROCEDURAL LANGUAGE plpgsql;
--
Leonardo M. Ramé
Medical IT - Griensu S.A.
Av. Colón 636 - Piso 8 Of. A
X5000EPT -- Córdoba
Tel.: +54(351)4246924 +54(351)4247788 +54(351)4247979 int. 19
Cel.: +54 9 (011) 40871877