pg_restore dbname

From: PG Doc comments form <noreply(at)postgresql(dot)org>
To: pgsql-docs(at)lists(dot)postgresql(dot)org
Cc: scorpy(at)gmail(dot)com
Subject: pg_restore dbname
Date: 2020-04-29 15:42:13
Message-ID: 158817493335.671.15980961934499341141@wrigleys.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-docs

The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/11/app-pgrestore.html
Description:

"-C
--create

Create the database before restoring into it. If --clean is also
specified, drop and recreate the target database before connecting to it.

With --create, pg_restore also restores the database's comment if any,
and any configuration variable settings that are specific to this database,
that is, any ALTER DATABASE ... SET ... and ALTER ROLE ... IN DATABASE ...
SET ... commands that mention this database. Access privileges for the
database itself are also restored, unless --no-acl is specified.

When this option is used, the database named with -d is used only to
issue the initial DROP DATABASE and CREATE DATABASE commands. All data is
restored into the database name that appears in the archive."

I am finding the opposite happening from that final sentence. When I use
--clean and --create, it is using the database name from the archive during
the DROP and CREATE commands, and using the --dbname argument for the actual
data restore. However, do either things make sense? Shouldn't all of these
commands be executed against the provided database name in the command? How
can I take a backup from my production environment and restore it into my
test environment, if the db names are different?

Responses

Browse pgsql-docs by date

  From Date Subject
Next Message David G. Johnston 2020-04-29 15:42:18 Re: Where is the typo?
Previous Message Erik Rijkers 2020-04-29 15:35:22 Re: Additional Chapter for Tutorial - (review first half of 0003)