Re: Problem with pg_restore into new database

From: "Mr(dot) John" <mr_johnmr(at)yahoo(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: Problem with pg_restore into new database
Date: 2008-11-17 09:47:03
Message-ID: 535883.19656.qm@web45508.mail.sp1.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

tanks for reply.

Why should I connect to a existing database to restore another one ?
from documentation,pg_restore seems to can do this :
http://www.postgresql.org/docs/8.0/interactive/app-pgrestore.html

-C
--create
Create the database before restoring into it. (When this option is used, the database named with -d is used only to issue the initial CREATE DATABASE command. All data is restored into the database name that appears in the archive.) in my first attempt was no -d,no error and ... NO database
@echo off
"pg_restore.exe" -h 192.168.1.1 -p 5432 -U postgres -C -v "stru.tar" 2>>log_resto.txt
echo %errorlevel% >err_resto.txt

log file is :
pg_restore: creating DATABASE _struct_fis_
pg_restore: connecting to new database "_struct_fis_"
pg_restore: creating SCHEMA pos
pg_restore: creating SCHEMA public
pg_restore: creating COMMENT SCHEMA public
pg_restore: creating PROCEDURAL LANGUAGE plpgsql
.............................

________________________________
From: Richard Huxton <dev(at)archonet(dot)com>
To: Mr. John <mr_johnmr(at)yahoo(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Sent: Monday, November 17, 2008 11:31:28 AM
Subject: Re: [GENERAL] Problem with pg_restore into new database

Mr. John wrote:
> but on the server is no database called _struct_fis_
> err_resto.txt file contents only "0".
>
> If I add -d
> @echo off
> "pg_restore.exe" -h 192.168.1.1 -p 5432 -U postgres -d "_struct_fis_" -C -v "stru.tar" 2>>log_resto.txt
> echo %errorlevel% >err_resto.txt
>
> error is "1" and log file :
>
> pg_restore: connecting to database for restore
> pg_restore: [archiver (db)] connection to database "_struct_fis_" failed: FATAL: database "_struct_fis_" does not exist
> pg_restore: *** aborted because of error

I'm not sure I understand your problem fully, but this is because you
are trying to connect (-d ...) to database _struct_fis_ before it's
created. Connect to a database you know exists (template1 or postgres
for example) and then let the restore create the database.

--
Richard Huxton
Archonet Ltd

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Grzegorz Jaśkiewicz 2008-11-17 10:00:45 Re: disable/enable trigger and transaction
Previous Message Richard Huxton 2008-11-17 09:32:22 Re: aggregates and case statements