Re: pg_restore issue

From: Leonardo M(dot) Ramé <l(dot)rame(at)griensu(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: PostgreSql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: pg_restore issue
Date: 2014-02-12 18:41:38
Message-ID: 20140212184138.GC6171@leonardo-laptop
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 2014-02-12 13:30:52 -0500, Tom Lane wrote:
> Leonardo =?iso-8859-1?Q?M=2E_Ram=E9?= <l(dot)rame(at)griensu(dot)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

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Jerry Sievers 2014-02-12 19:02:51 Re: pg_restore issue
Previous Message Leonardo M. Ramé 2014-02-12 18:39:46 Re: pg_restore issue