Remove the word "virgins" for documentation

Apparently, it's no longer welcome.  Therefore replace it with "pristine",
and add some explanatory text while at it.

Reported by Brian Williams
Discussion: https://postgr.es/m/157313712259.14261.16141263269989647311@wrigleys.postgresql.org
This commit is contained in:
Alvaro Herrera 2019-11-14 17:33:26 -03:00
parent 50d22de932
commit 6ae4d27187
2 changed files with 8 additions and 5 deletions

View File

@ -199,11 +199,12 @@ createdb -O <replaceable>rolename</replaceable> <replaceable>dbname</replaceable
should never be changed after the database cluster has been
initialized. By instructing
<command>CREATE DATABASE</command> to copy <literal>template0</literal> instead
of <literal>template1</literal>, you can create a <quote>virgin</quote> user
database that contains none of the site-local additions in
of <literal>template1</literal>, you can create a <quote>pristine</quote> user
database (one where no user-defined objects exist and where the system
objects have not been altered) that contains none of the site-local additions in
<literal>template1</literal>. This is particularly handy when restoring a
<literal>pg_dump</literal> dump: the dump script should be restored in a
virgin database to ensure that one recreates the correct contents
pristine database to ensure that one recreates the correct contents
of the dumped database, without conflicting with objects that
might have been added to <literal>template1</literal> later on.
</para>

View File

@ -54,8 +54,10 @@ CREATE DATABASE <replaceable class="parameter">name</replaceable>
system database <literal>template1</literal>. A different template can be
specified by writing <literal>TEMPLATE
<replaceable class="parameter">name</replaceable></literal>. In particular,
by writing <literal>TEMPLATE template0</literal>, you can create a virgin
database containing only the standard objects predefined by your
by writing <literal>TEMPLATE template0</literal>, you can create a pristine
database (one where no user-defined objects exist and where the system
objects have not been altered)
containing only the standard objects predefined by your
version of <productname>PostgreSQL</productname>. This is useful
if you wish to avoid copying
any installation-local objects that might have been added to