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
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 |