Re: pg_restore --clean --create reference documentation incongruity - Mailing list pgsql-admin

From Matteo Fabbri
Subject Re: pg_restore --clean --create reference documentation incongruity
Date
Msg-id 5AA63B0D-A163-481F-AB3A-5FAABA2BA689@teamsystem.com
Whole thread Raw
In response to Re: pg_restore --clean --create reference documentation incongruity  ("Hunley, Douglas" <douglas.hunley@openscg.com>)
List pgsql-admin

Ok, -d intended as the database to connect to, makes sense.

Not the words of the documentation (-C --create): “When this option is used, the database named with

-d is used only to issue the initial DROP DATABASE and CREATE DATABASE commands.”!

Thanks for the clarification,

matt

 

On Fri, Oct 7, 2016 at 5:32 AM, Matteo Fabbri <ma.fabbri@teamsystem.com> wrote:

I expected the specified db (-d TEST1) was dropped and created, not the TEST2 db.

In essence it seems that the –d parameter is ignored and TEST1 db remains untouched.

What is the correct behavior? Is a pg_restore error? Is a reference documentation error? Or simply I have not interpreted correctly it?


You're misunderstanding the documentation slightly. The '-d' parameter is what database to connect to. The '-c' and '-C' parameters define how pg_restore handles the database(s) defined inside the dump. 

 

Think of it this way, if you have a completely new empty PostgreSQL install, and you have a dump of 'testdb' you want to restore, you can't use '-d testdb' because you can't connect to a db that doesn't exist yet. 


 

--

{
  "name" : "douglas j hunley",
  "email" : "
douglas.hunley@openscg.com",
  "title" : "database engineer",

  "phone" : "+1 732 339 3419 x163"

}

pgsql-admin by date:

Previous
From: "Hunley, Douglas"
Date:
Subject: Re: PostgresSQL 9.5 and systemd autorestart but without replication.
Next
From: Poul Kristensen
Date:
Subject: Re: PostgresSQL 9.5 and systemd autorestart but without replication.