Re: Creating a database with pg_restore
От | Tom Lane |
---|---|
Тема | Re: Creating a database with pg_restore |
Дата | |
Msg-id | 12077.1104347096@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Creating a database with pg_restore ("Keith Worthington" <keithw@narrowpathinc.com>) |
Список | pgsql-novice |
"Keith Worthington" <keithw@narrowpathinc.com> writes: > I want to create a test database but I am having difficulty understanding how > to use pg_restore. > # pg_restore --create --dbname=IPA_TEST --schema-only --verbose -U postgres > TEST.tar > pg_restore: connecting to database for restore > pg_restore: [archiver (db)] connection to database "IPA_TEST" failed: FATAL: > Database "IPA_TEST" does not exist in the system catalog. > pg_restore: *** aborted because of error --dbname specifies the already-existing database to connect to initially. When you use --create, the only thing that connection is used for is to issue the CREATE DATABASE command for the target DB, and then pg_restore reconnects to the new target DB. So the usual locution is pg_restore --create --dbname=template1 ...etc... Plan B is to create the target DB by hand before running pg_restore, in which case you don't use --create and do specify the real target DB in --dbname. You have to do it this way if you wish to restore into a DB with a different name than you dumped from, because --create will always create the original DB name shown in the dump. regards, tom lane
В списке pgsql-novice по дате отправления: