From: | "Andrus" <kobruleht2(at)hot(dot)ee> |
---|---|
To: | "pgsql-general" <pgsql-general(at)postgresql(dot)org> |
Subject: | How to restore to empty database |
Date: | 2020-01-30 22:23:15 |
Message-ID: | D3F14323F35F4DC4BA3E517ED11199E1@dell2 |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
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
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.
From | Date | Subject | |
---|---|---|---|
Next Message | Adrian Klaver | 2020-01-30 22:31:23 | Re: How to restore to empty database |
Previous Message | Adrian Klaver | 2020-01-30 22:16:51 | Re: Exclude constraint on ranges : commutative containment : allow only complete containment |