Re: Mind of its own?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: s400t(at)yahoo(dot)co(dot)jp
Cc: "pgsql-general(at)lists(dot)postgresql(dot)org" <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Re: Mind of its own?
Date: 2019-03-01 00:24:46
Message-ID: 4099.1551399886@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

<s400t(at)yahoo(dot)co(dot)jp> writes:
> I am using Postgresql 9.6, and the latest phppgadmin. OS is Debian 9.6.

> 1. Created a database.
> 2. Created tables inside that database.
> 3. Dropped that database.

> Now, what happens is when I create another database with the same name or different name, all those tables are already inside that database!!! I have not run the table create script. 

I think you created some tables in the "template1" database, which is
(by default) what CREATE DATABASE clones to make a new DB. Duplicating
its contents is considered a feature not a bug.

You could manually clean out template1, or if that seems painful,
you could drop it and recreate it by cloning template0 (see
CREATE DATABASE's TEMPLATE option). template0 exists precisely
to be a virgin empty database for this sort of purpose.

(There is an interlock to prevent you from dropping either
of these template databases accidentally. Overriding that is
left as an exercise for the student.)

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Andre Piwoni 2019-03-01 01:19:26 Re: PostgreSQL (linux) configuration with GSSAPI to a Windows domain
Previous Message Ahmed, Nawaz 2019-03-01 00:24:36 RE: Barman disaster recovery solution