From: | Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com> |
---|---|
To: | Andrus <kobruleht2(at)hot(dot)ee>, pgsql-general <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: How to restore to empty database |
Date: | 2020-01-30 22:31:23 |
Message-ID: | 8f1d29bd-907e-e1c5-cc5f-2b9cade5af19@aklaver.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 1/30/20 2:23 PM, Andrus wrote:
> Hi!
>
> I want to restore to new empty database using pg_restore .
> pg_restore should create new empty database and restore into it.
> If database exists, pg_restore should clean all data from it or drop and
> create new empty database before restore.
>
> According to pg_restore doc, switches --clean --create --if-exists
> should do this.
>
> I tried
>
> PG_COLOR=auto
> PGHOST=localhost
> PGPASSWORD=mypass
> PGUSER=postgres
> export PGHOST PGPASSWORD PG_COLOR PGUSER
> pg_restore --clean --create --if-exists --dbname=mydb --jobs=4
> --verbose "mydb.backup"
>
> but got error
>
> pg_restore: connecting to database for restore
> pg_restore: error: connection to database "mydb" failed: FATAL:
> database "mydb" does not exist
>
> I also tried without --dbname=mydb but then got error
>
> pg_restore: error: one of -d/--dbname and -f/--file must be specified
You need to connect to a database that exists with --dbname, for
instance --dbname=postgres. Postgres will then use that connection to
create the new database, in your case mydb.
>
> How to restore to database which does not exist to drop existing
> database before restore if it exists ?
> Should I invoke
>
> drop database if exists
>
> and
>
> create database
>
> commands before calling pg_restore or can pg_restore do it itself ?
>
> Using Postgres 12 on Debian 10
>
> Andrus.
>
>
--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com
From | Date | Subject | |
---|---|---|---|
Next Message | Thomas Munro | 2020-01-30 22:41:05 | Re: ERROR: too many dynamic shared memory segments |
Previous Message | Andrus | 2020-01-30 22:23:15 | How to restore to empty database |